【*p++】的意思就是先取出指针p指向的地址单元的数据,之后再将该值加1,由于运算符【*】的优先级高于运算符【++】,所以是先取指针p指向的地址单元的数据,在p指向下一位置的数据。
*p++
的意思就是先取出指针p指向的地址单元的数据,之后再将该值加1,由于运算符 * 的优先级高于运算符 ++,所以是先取指针p指向的地址单元的数据,然后,p指向下一位置的数据。【推荐教程:C++教程】
由于运算符 * 的优先级高于运算符 ++,所以是先取指针p指向的地址单元的数据。具体如下:
1、取数组当前位置的值*p;
2、然后,p指向下一位置的数据。
代码运行图如下:
*p++ :*和++都是同级运算符,右结合。但++要整个表达式运算完了才运算,先提取P指向对象的值,然后P再做++运算,指向下一个对象。
*(P++) :这个()有点绞水啊,++要整个表达式运算完了才自加,所以同上,提取的还是P指向的对象值,提取后,P就指向下一个对象了。
(*p)++:这个可是不一样啊,人家是先取值,然后值++;
++*p:人家是先取值,然后值++;
为什么有的是值加加有的是地址加加,这就是括号的作用,括号将其绑定为整体。同时也看结合性。
以上就是c语言*p++是什么意思?的详细内容,更多请关注php中文网其它相关文章!