这个问题在这里已经有了答案:




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/

10-11 22:43
查看更多