相关疑难解决方法(0)

是`C == C++`未定义的行为?

朋友告诉我,之后:

int C = anything;
Run Code Online (Sandbox Code Playgroud)

C == C++会有价值true.这是一个笑话,对经常声称"C与C++不同"的反驳.

但是,由于==不是序列点,我认为这实际上是未定义的行为.程序可能首先进行评估C++,因此C > C++并且C == C++都是未定义的.但是,C >= C++始终会评估为真.当然,当操作数被翻转时也是如此(C++ <= C总是如此,其他一切都是未定义的).

这个分析是否正确?

c++ undefined-behavior

7
推荐指数
1
解决办法
687
查看次数

标签 统计

c++ ×1

undefined-behavior ×1