我们在学习指针时,对于指向数组的指针如何去访问数组中的元素经常搞不清楚,也经常对一些数组的操作计算无法正确的区分开来,今天我们就来对三种指针操作计算进行说明。
操作计算中的几个区分问题:
*pt++
由于++是后置运算符,且“++”运算符的优先级要高于“*”运算符,所以在结合性上是“++”运算符要和pt指针先结合,也就是等效于*(pt++),但++是后置运算符,所以这里是先得到的指针pt指向的变量的值,然后再执行++运算符即地址++,而不是指针指向的数值++。
*(++pt)
这里先运算++pt,也就是pt先自增加一次即地址++,然后进行取值运算。
(*pt)++
先将pt指针指向的地址值中的数据取出来,然后将取出的数据值自增加一次运算,而不是地址自增加运算。
三面三种指针操作计算大家一定要区分开来,特别是第一种一定要理解准确,要注意运算符的优先级和结合性对表达式的影响。
详细的讲解视频如下所示:
领取专属 10元无门槛券
私享最新 技术干货