MySQL赋值运算符与表达式用户指南
2.10 赋值运算符与赋值表达式
对于类似i = i + 2这样的表达式,左边的变量出现在右边时,可简写为:i += 2。这里的+=被称为赋值运算符。大多数二元运算符(例如+)都对应一个赋值运算符形式:op=,其中op可以是+、-、*、/、%等。
- 如果
expr1和expr2为表达式,expr1 op= expr2相当于expr1 = (expr1) op (expr2),只是expr1只被计算一次。注意:括号优先级,如x *= y + 1等价于x = x * (y + 1)。
举个例子,函数bitcount用于计算整数x中1的比特位数量:
/* bitcount:统计x中为1的比特位*/
int bitcount(unsigned x) {
int b;
for (b = 0; x != 0; x >>= 1)
if (x & 01)
b++;
return b;
}
将x声明为unsigned类型保证向右位移时空出的位被填充为0,使代码兼容不同机器。赋值运算符的优势在于简洁,且更贴近自然语言的表达:我们通常说“将2加到i中”而非“取i,加2后放回i”。
文件大小:1.62MB
评论区