以下叙述中正确的是(    )
A、语句int a[8]={0};是合法的
B、语句int a[]={0};是不合法的,遗漏了数组的大小
C、语句char a[2]={12, 125, 1};是合法的
D、定义char a[3]; 则数组a在内存中占6个字节