这个问题在这里已经有了答案:
8年前关闭。
#include <iostream>
using namespace std;
int main()
{
int x[3] = {};
int i=0;
x[i] = i++;
cout << x[0] << " " << x[1] << endl;
return 0;
}
键盘给了我这个:第 9 行:警告:'i' 上的操作可能未定义
为什么操作未定义?
最佳答案
这里解释清楚:C-Faq
为什么这段代码不起作用:a[i] = i++;
?
相关标准报价如下:
C++03 5 表达式 [expr]:
第 4 段:
关于c++ - 为什么像 "a[i] = i++;"这样的增量操作会导致未定义的行为?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11132236/