*p++ 和 *++p

引用数组数据时经常会出现 *p++ ,    *++p,     ++*p,      (*p)++

*p++ 等同于*(p++):其中++和*的优先级相同,所以从右向左执行

*p++ 先执行p++。p++是本条语句执行完成后加一,所以先去取*p的内容然后本语句执行完,++指向下一个元素;*(p++),先执行括号内的++,本条语句执行完之后再自加所以先去取*p的内容然后本语句执行完,++指向下一个元素;

*++p等价于*(++p):的优先级相同,所以从右向左执行

*++p 先执行++p ,指向下一个元素,然后再取值;*(++p)先执行p++然后指向下一个元素,然后再取值

++*p等价于++(*p)的优先级相同,所以从右向左执行

先执行取值操作,然后执行++,在原本的值上自加

(*p)++ ,先运算括号内的,*p先取值,然后本条语句执行完成之后再进行自加,取的值进行自加

 

  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值