C语言问题,对C数组元素正确引用的是?
intc[4][5],(*cp)[5];cp=c;Acp+1B*(cp+3)C*(*cp+2)D*(cp+1)+3...
int c[4][5],(*cp)[5];
cp=c;
A cp+1
B *(cp+3)
C *(*cp+2)
D*(cp+1)+3 展开
cp=c;
A cp+1
B *(cp+3)
C *(*cp+2)
D*(cp+1)+3 展开
2个回答
展开全部
解:
int c[4][5],(*cp)[5];
cp=c;
这里cp是二维数组c的首地址 cp本身也是二维数组
正确的是:C
*(*cp+2) *cp是cp[0][0]的地址 *cp+2就是cp[2][0]的地址
*(*cp+2) 就是cp[2][0]的值
其余的引用都是引用的地址
要想引用二维数组的元素值 必须使用两个**
希望能帮助你哈
int c[4][5],(*cp)[5];
cp=c;
这里cp是二维数组c的首地址 cp本身也是二维数组
正确的是:C
*(*cp+2) *cp是cp[0][0]的地址 *cp+2就是cp[2][0]的地址
*(*cp+2) 就是cp[2][0]的值
其余的引用都是引用的地址
要想引用二维数组的元素值 必须使用两个**
希望能帮助你哈
追问
(*cp)[5];这个不是指向一维数组的指针变量吗?
追答
对 但是它实际也是一个行标不确定的动态二维数组
所以二维数组名可以直接赋值给cp 从而cp就是c首地址
用法和数组c相同
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询