*与++

来源:互联网 发布:网络设计图是什么意思 编辑:程序博客网 时间:2024/04/19 16:19
*与++优先级一样高,且这两个运算符的结合性均是从右向左,
即先计算++,再计算*(因为++在*右边),但由于该表达式:
cksum += *buffer++;
中++是后缀运算符,尽管++先计算,但*取的是++之前的值,
即cksum 加上*buffer中的内容,然后buffer自身加一,指向下
一个内存地址,以供以后的语句使用。
如果该句改为:
cksum += *++buffer;
*和++的优先级也是一样高,且先计算++,此时由于++是前缀运算符,
cksum 这时加上*(buffer+1)的内容,且buffer自身也加一。
0 0