c、按位、逻辑表达式

标签 c

int x = 0;
x^=x || x++ || ++x;

x 最后的答案是 3。 如何分析这个表达式? 对此有点困惑。 非常感谢。

最佳答案

这是未定义的行为。结果可能是任何东西。这是因为没有 sequence point++xx ^= 之间,所以不能保证哪个会先“完成”。

关于c、按位、逻辑表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4810890/

相关文章:

c - C/C++ 中的简单计算器程序

c - 直接插入排序的错误 C 实现

c - 0 - 0 的补码

产生随机数的C程序

c - C语言的串口

c - if 语句是否可以判断是否未输入某些内容?

c - 有人可以向我解释这段代码,尤其是 for 循环吗?

c - 如何使用C从PID中获取进程名称

c - 警告 :gets function is dangerous

c - 如何在不使用 c 中的算术运算符的情况下将给定数字乘以 2?