1、赋值操作符
a += expression 等同于 a = a + (expression)
如此则确保expression只被求值一次,保证其在进行加法操作之前已经被求值
2、移位运算
一个例子,求一个字符中1位的个数
1 /* *********************************
2 * 这个函数返回参数数值中位为1的个数
3 * *********************************/
4
5 int count_bits(unsigned char value)
6 {
7 int ones;
8 for(ones = 0; value != 0;value >>= 1)
9 {
10 if(value & 1 != 0)
11 ones += 1;
12 }
13 return ones;
14 }
3、sizeof操作符,返回操作数的类型长度,而不是其占用的字节数。仅当操作数是一个数组时,返回值才是数组的长度。操作数是指针时,返回值为4,即是指针类型的长度
To be continued