社区讨论

关于未定义的自增操作

P4557[JSOI2018] 战争参与者 3已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@loc9bgj7
此快照首次捕获于
2023/10/30 10:04
2 年前
此快照最后确认于
2023/11/04 21:51
2 年前
查看原帖
本题我在本地是对的,但在 OJ 上却全 WA 了。正当我百思不得其解的时候,发现在 LOJ 上提示错误信息:下面代码中的 cnt 的操作可能未定义:
CPP
a[++cnt] = a[cnt - 1] + tmp1[cnt1++];
于是我改成
CPP
++cnt, a[cnt] = a[cnt - 1] + tmp1[cnt1++];
就对了。
但我还是有些不理解,在我看来上面两种写法是一样的。所以为何会出现不一样的结果呢?自增运算符的优先级是怎么样的呢?

回复

4 条回复,欢迎继续交流。

正在加载回复...