本博客已迁往http://coredumper.cn
变量初始化是指在定义变量的同时进行了赋值操作,例如:
int a = 1;
而如果把定义变量和变量赋值的操作分开,则不再是初始化,例如:
int a;
a = 1;
整个赋值表达式的值是=左边的变量的值,故C中允许如下的赋值方式,另外赋值运算符是右结合的:
x = y = 1;
复合赋值运算符与赋值运算符=具有相同的低优先级,故如下两条语句是等价的:
x *= y * 3 + 2;
x = x * (y * 3 + 2);
逗号运算法具有两个特性:首先,它保证被它分开的表达式按从左到右的次序进行计算。其次,整个逗号表达式的值是右边成员的值。
通过逻辑与运算符&&或者逻辑或||运算符连接的左右两个表达式,是从左到右来求值的,并且如果可以通过左边表达式确定整个逻辑表达式的值后,将不会继续计算右边表达式的值。