【发布时间】:2021-06-23 15:58:57
【问题描述】:
此代码为 ++i||j++&&++k 打印不同的值,具体取决于使用的是 printf 函数还是 cout。这是为什么呢?
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int i = 1,j=1,k=1;
cout<<++i||j++&&++k;
printf("%d", ++i||j++ && ++k);
}
【问题讨论】:
-
因为您永远不会,永远在生产场景中编写这样的代码,所以您不需要知道这个问题的答案。
-
这看起来不像
i++ + ++i那样未定义的行为,因为每个变量在每个语句中只使用一次。