关于C数组语法的困惑?
ltcs 2004-06-26 10:58:40 int a[5] = { 1, 2, 3, 4, 5 };
表达式:a[4]
表达式值:5
C把数组下标访问换算为*( a + 4 ),也就是间接访问.
--------------------------------------------------------------
但这个但表达式:&a[4]
表达式值:a[4]的地址
按优先级先算a[4],但a[4]结果不是5吗(按上面的公式进行换算)?再对5(常量)
进行取地址,结果是a[4]的地址,为什么不是非法了?
谢谢.