c语言*p++是什么意思?

2026年09月25日 06:30
有1个网友回答
网友(1):

*P++ :*和++都是同级运算符,右结合。但++要整个表达式运算完了才运算,先提取P指向对象的值,然后P再做++运算,指向下一个对象。*p++的意思就是先取出指针p指向的地址单元的数据,之后再将该值加1。

下面具体区分

1、*p++:只将p加1

2、++p or p++:将p加1

3、++*p:将*p所指单元加1

4、++*p++:将p加1,同时也将*p所指单元加1

扩展资料

*p++先执行++再执行*,分三步

(1)先执行p++,因为是后置,先用p

(2)再执行*p,取p所指的内容

(3)最后再让p++,让p的地址加一个单位

具体的看代码

#include

using namespace std;

void main(){

int a[5] = { 2, 4, 5, 8, 9 };

int *p;

p = a;

cout << "p的值为" << p<

int i=*p++;

cout << i << endl;

cout << "*p++后的p的值为" << p <

}

参考资料 百度百科——优先级