C语言中X为int型的变量,x+=x-=x-x这条式子

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/25 17:59:50
C语言中X为int型的变量,x+=x-=x-x这条式子C语言中X为int型的变量,x+=x-=x-x这条式子C语言中X为int型的变量,x+=x-=x-x这条式子不要解释了,这样的表达式是没有定义的.

C语言中X为int型的变量,x+=x-=x-x这条式子
C语言中X为int型的变量,x+=x-=x-x这条式子

C语言中X为int型的变量,x+=x-=x-x这条式子
不要解释了,这样的表达式是没有定义的.
x += x -= x - x;
因为这个表达式尝试在相邻的两个顺序点之间两次改变变量x的值,这个时候编译器的求值顺序是任意的,赋值号左右两边的x的值编译器自己做主,它想选减之前的就选减之前的,想用加之后的就用加之后的!楼主,去参考一下C语言里面顺序点的定义以及几种顺序点的作用.这样的表达式不同的编译器可能会给出不同的值.C语言里面规定不能在两个相邻的顺序点之间两次改变同一个变量的值.