怎么理解这道题

6. 若有以下声明,且0<= i < 4, 则错误的赋值语句是 D 。
int s[4][6], (*p)[6];
A. p=s+i; B. p=s; C. p=&s[i]; D. p=*s;

好久没看编程语言了,应该是这样解释:
int s[4][6] /*定义一个整形二维数组,起始地址是'S'*/;
int (*p)[6]/*定义一个整形的数组指针,起始地址'p'*/';
下面看选项:
A. p=s+i 就是将地址S加上i值赋予指针地址p。
B. p=s 就是将地址S值赋予指针地址p。
C. p=&s[i] 将数组s[i]的首地址赋予p。
D. p=*s 看了以上三项,不难得知此种表示非法
温馨提示:答案为网友推荐,仅供参考
相似回答