本文主要是介绍c语言数组指针加减指向的基础问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
首先需要明确的是几个基础问题
1.数组名代表的是数组的首地址
2.用指针指向数组的首地址两种方法
p = &a[0] 或者p=a 二者等价
3.指针赋值方式
int *p,*p1,*p2,i,a[20];
(1)p= &i; 完成的功能:将变量 i 的地址赋值给指针 p,即:p→i。
(2)p= a; 完成的功能:将数组 a 的首地址赋值给指针 p,即:p→a[0]。
(3)p= &a [i]; 完成的功能:将数组元素 a[i]的地址赋值给指针 p,即:p→a[i]。
(4)p1= p2; 完成的功能:将指针变量 p2 的值赋值给指针 p1,即:p1 与 p2 指向同一个地址。
指针的自增自减:
大致可以分为 8 种格式:
(1)指针变量++ 例如:p++;
(2)++指针变量 例如:++p;
(3)指针变量-- 例如:p–;
(4)–指针变量 例如: --p;
(5)指针变量*++ 例如:*p++;或 (*p) ++;
(6)++*指针变量 例如:++*p; 或 ++(*p);
(7)*指针变量-- 例如:*p–; 或 (*p) --;
(8)–*指针变量 例如: --*p; 或 --(*p);
注意:
这里的++,–代表的意思是增加一个单位,在指针左边代表先进行加减再运算算,在右边代表先进行运算再加减
下面讲解++,–同理;
这篇关于c语言数组指针加减指向的基础问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!