What is 0 doing?
本问题已经有最佳答案,请猛点这里访问。
下面的C代码在做什么?
1 2 3 | int i; int* p = &i; 0[p] = 42; |
但我认为这不会编译事件。但它甚至执行时没有分段错误。所以我想知道我错过了
C标准规定了操作员
无论
这就是为什么
1 | 0[p] = *(0+p) and p[0] = *(p+0) |
从上面的陈述来看,两者都是相等的。
1 | 0[p] |
在
相当于
1 | p[0] == *(p + 0) == *(0 + p) == 0[p] |
号