定义了二维数组a[3][4],那么a+1,*(a+1),*a[1],*(a[0]+1)各代表什么意思

2024-12-01 17:10:44
推荐回答(2个)
回答1:

因为a是T[4]类型,所以a[1]得到的是int型的值,对其取下标是非法的。所以a[1][0]是一个非法的表达式。

咳咳以下都是废话。。怎么跑题了。。。既然打出来就懒得删了

至于&a[1][0],编译器解释为&((a[1])[0]),同样非法。

回答2:

定义了二维数组a[3][4],那么
a+1=*(a+1)=*a[1],表示a[1]的地址,即&a[[1]。
*(a[0]+1)表示a[0][1]