【发布时间】:2019-10-06 06:39:56
【问题描述】:
我认为当要检查的语句为假时,关系运算符 == 返回 0,当它为真时返回 1。但是,这不是我在一段代码中得到的输出。谁能解释一下?
我已尝试在互联网上查找此内容,但在任何地方我都找到了我所知道的相同解释。
int main()
{
int x=35;
printf("\n%d %d %d",x==35,x=50,x>40);
return 0;
}
我预计输出为:1 50 1 但是显示的输出是:0 50 0
【问题讨论】:
-
您所期待的是未指定的行为。 printf 执行操作的顺序不是标准的。
-
不要投票关闭它。这不是一个骗局,也不是一个简单的印刷错误。