为什么2 [myArray]有效的C语法?

重复

在C数组中,为什么这是真的? a [5] == 5 [a]


给定一个数组

 myArray[5] = { 0, 1, 2, 3, 4 };

一个元素可以被访问为

 2[myArray]

为什么? 当我看到这个表达式时,我想象C尝试访问指针“2”并且未能添加“myArray”指针增量来解引用该地址。 我错过了什么?


在C中,a [b]相当于*(a + b)。 当然,+运算符是可交换的,所以a [b]与b [a]相同,*(b + a)与*(a + b)相同。

链接地址: http://www.djcxy.com/p/86723.html

上一篇: Why is 2[myArray] valid C syntax?

下一篇: Is chars[4] and 4[chars] the same in C? Why?