有这样一道二级的真题: 若有以下程序段: int a[12]={0},*p[3],**pp,i; for(i=0;i<3;i++) p[i]=&a[i*4]; pp=p; 则对数组元素的错误引用是______ A.pp[0][1] B.a[10] C.p[3][1] D.*(*(p+2)+2) 答案选C,我想是因为3超出了范围吧。 B肯定是对的。 那么A和D该怎么理解呢? 能不能归纳一下C语言里面数组元素引用的问题?