若有定义: int w[3][5]; 则以下不能正确表示该数组元素的表达式是

admin2020-11-23  34

问题 若有定义: int w[3][5]; 则以下不能正确表示该数组元素的表达式是

选项 A、*(*w+3)
B、*(*(w+1))
C、*(w+1)[4]
D、*(&w[0][0]+1)

答案C

解析 在C语言中,二维数组的名字表示的是二维数组的地址,对于二维数组 int w[3][5],可以认为w为一个一维数组,含有3个元素,而每个元素为一个含有5个元素的一维数组。而(w+1)为一个含有两个元素的一维数组,首先和(w+1)[4]结合非法,4超出了二维数组的边界,取值也就是非法的了。
转载请注明原文地址:https://jikaoti.com/ti/K9D0FFFM
0

最新回复(0)