c语言连续赋值如何计算
在C语言中,连续赋值的计算顺序是从右向左进行的。也就是说,右侧的表达式会先计算,然后将结果赋值给左侧的变量。
例如:
int a, b, c;
a = b = c = 5;
在上面的代码中,先计算c = 5
,然后将结果赋值给b
,再将b
的值赋值给a
,终究三个变量的值都被赋值为5。
另外一个例子:
int a, b, c;
a = (b = 3) + (c = 2);
在这个例子中,先计算b = 3
和c = 2
,然后将b
和c
的值相加,结果为5,最后将5赋值给a
。
需要注意的是,连续赋值中的计算顺序是从右向左,但是在表达式中各个变量的求值顺序其实不肯定。因此,不建议在连续赋值中依赖于变量的求值顺序,以避免造成不肯定的结果。
TOP