integer indexed with a string in c++
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
In C arrays why is this true? a[5] == 5[a]
号
这是怎么可能的,这是有效的C++?
1 2 3 4 | void main() { int x = 1["WTF?"]; } |
在VC++10上,它编译,并且在调试模式下,
发生什么事?
数组下标运算符是可交换的。它相当于
异常:代码片段不是有效的C++,实际上-EDCOX1 6必须返回EDCOX1×5。
您可以在这里阅读更深入的讨论:在C数组中,为什么是这样的?A[5]==5[A]
1 | int x = 1["WTF?"]; |
等于
1 | int x ="WTF?"[1]; |
号
84是"T"ASCII码
这样做的原因是,当内置操作符