C语言关于二维数组的问题?
例如w是个二维数组名,a是一维数组名。有a[i]和*(a+i)等价。那么*(*w+3)看成*(*(w+0)+3),上面的a[i]和*(a+i)等价,那*(w+0)就是w[...
例如w是个二维数组名,a是一维数组名。
有a[i]和*(a+i)等价。
那么*(*w+3)看成*(*(w+0)+3),上面的a[i]和*(a+i)等价,那*(w+0)就是w[0],*(w[0]+3)就是w[0][3]
*(w+1)[4]由于[]优先级比*高,所以等价于*((w+1)[4]),把(w+1)这个整体看成a就变成*(a[4]),然后就是*(*(a+4)),把a带回去*(*(w+5)),*(w+5)就是w[5],表示的是&w[5][0],再加个星号就是w[5][0]
我想问下这样理解有问题吗. 展开
有a[i]和*(a+i)等价。
那么*(*w+3)看成*(*(w+0)+3),上面的a[i]和*(a+i)等价,那*(w+0)就是w[0],*(w[0]+3)就是w[0][3]
*(w+1)[4]由于[]优先级比*高,所以等价于*((w+1)[4]),把(w+1)这个整体看成a就变成*(a[4]),然后就是*(*(a+4)),把a带回去*(*(w+5)),*(w+5)就是w[5],表示的是&w[5][0],再加个星号就是w[5][0]
我想问下这样理解有问题吗. 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询