指针变量的运算

本文详细解析了C/C++中四种不同指针运算符的使用方式及其区别:++*p、(*p)++、*p++及*++p。通过具体实例,帮助读者理解这些运算符的工作原理及应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:指针变量的运算
++*p(*p)++*p++*++p四者之间的差别:
首先说一下:运算的优先级:
++*同优先级,结合方向为自右向左
(1)
++*p,则相当于++(*p),给p指向的变量+1,然后取该变量的值。
通俗一点就是:++在前,先自增(*p)指向的值,值由6变为7,然后取出。
图展示如下:
(二)
(*p)++,则是先取p指向的变量值,然后该变量+1
即:++在后,先取出*p的值,然后再加1.所以取到的值仍未6
但下面再用时*P此值变为7
(三)
*p++相当于*(p++),表示取p所指向变量的值,然后p+1;
即:*(p++)++在后,先取出p所指的值仍为6,p变量加1,指向下一个。
截图如下:
(四)
*++p相当于*(++p),先给p+1,然后取p所指向变量的值
和三比较类似,++在前,所以p的值先加1,然后取出p所指向的值,此时为7
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值