C语言指针运算:*p++和*p+=1详解
运算后,a数组的元素值为{10, 12, 12}。
*p++ 先取出 p 所指向的值,即 a[0] 的值 10,然后将 p 指向下一个元素 a[1]。 *p+=1 将 a[1] 的值加 1,即 a[1]=a[1]+1=11+1=12。
*p++ 执行后,*p+=1 是在 *p++ 运行的基础上执行的,即在 p 指向 a[1] 的基础上执行的。
- 和 ++ 的优先级相同,但结合性不同。++ 的结合性是从右到左,即 *p++ 先执行 *p,然后再执行 ++;而 * 的结合性是从左到右,即 *p+=1 先执行 *p,然后再执行 +=1。
原文地址: http://www.cveoy.top/t/topic/hs4H 著作权归作者所有。请勿转载和采集!