![](https://i-blog.csdnimg.cn/blog_migrate/711886c3f8d7f771ca13562c09574610.png)
指向数组的指针变量加减只是往前往后移动元素,与字节无关
以p为开始,向下移动i个元素的值 p[i]=a[i]=*(p+i)=*(a+i)
*(p++)=*p++ 指向发生移动,但取值仍是旧值
++和*二级指针运算符,从右向左,
*++p=*(++p) 取值是新值
++*p --*p,内容发生改变
(*q)++, 先标后加,先标表达式的值(*q),执行后才将内容值加一,q指向没变
++(*q)先加后标
![](https://i-blog.csdnimg.cn/blog_migrate/26021b7c28f142d2a8f4cca073683cd2.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9ac30090f4fe9f4f381c46682b88a1c8.png)
p++先标到旧地址后加往后一个指向=&a[0]++
*p++=*(p++),先标后加
![](https://i-blog.csdnimg.cn/blog_migrate/3aaf547c85249392aef14464fdc02381.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1cc412b2fb09090fecc88f82b075b9af.png)
指向多维数组的指针变量
a+i 行指针,指向的是一整行,加一指向下一行
*(a+i)和a[i]一样都是列指针,指向的是一个元素
*(
二维是行,一维是列,元素,【】和*等价
![](https://i-blog.csdnimg.cn/blog_migrate/c8432550dce1615629cf176f1db8db2a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e5aacfffaec44380466f95a0461bba72.png)