int x=0;
printf("%d %d \n",x,++x);
在linux系统下使用gcc编译器输出结果为: 1 1
printf的参数运行顺序是否为 先运行右边的表达式,再运算左边的式子
但是输出结果是 undefined。因为在 C 语言中,对于同一个变量在一条语句中既出现了先算的操作也出现了后算的操作,其行为是未定义的。因此,无法确定 x 的值应该是什么。
int x=0;
printf("%d %d \n",x,++x);
在linux系统下使用gcc编译器输出结果为: 1 1
printf的参数运行顺序是否为 先运行右边的表达式,再运算左边的式子
但是输出结果是 undefined。因为在 C 语言中,对于同一个变量在一条语句中既出现了先算的操作也出现了后算的操作,其行为是未定义的。因此,无法确定 x 的值应该是什么。