(*p)++和*(p++)和*p++的区别
*(p++)究竟是谁++,是p的地址++,还是p所指的东西的地址++
首先要明白后缀++,--的优先级是和(),[](这个方括号是数组下标)一个级别的;
前缀是和!,正负号,解除引用*,地址&是一个级别的;
比如
1 2 |
|
*++p ==>*(++p) : 因为*与++无法组合起来,所以是就近,++与p线组合;p先自+,然后*p,最终为3
++*p ==> ++(*p):先*p,即arr[0]=1,然后再++,最终为2
*p++ ==> *(p++):表达式值为arr[0],即1,该语句执行完毕后,p指向arr[1]