若有说明:int a[3][4];则对a 数组元素的正确引用是 () A a[2][4] B a[1][3] C a[1+1][0] D a(2)(1)

问题描述:

若有说明:int a[3][4];则对a 数组元素的正确引用是 () A a[2][4] B a[1][3] C a[1+1][0] D a(2)(1)
请问答案是什么,还是为什么,主要是为什么?

选B和C
int a[3][4],数组高维下标从0-2,数组低维下标从0-3
A的低维下标是4,超过最大低维下标,所以不合法
B的两个下标都落在合法区域
C的高维下标是1+1常量,即为2,也是合法的
D的表达方式不合法,数组下标要用[],而不能用()