前言
C语言有很多的知识,其中一个就是关于数组指针的问题,对于一些刚学C语言的萌新来说,C语言的数组指针是一个问题。
定义
数组(Array)是一系列具有相同类型的数据的集合,每一份数据叫做一个数组元素(Element)。而且数组在内存中只占一块内存,并且每一个元素是连续排列的。
创建数组
一般来说,C语言创建数组只需要两个条件:
- 指明数组的类型
- 指明数组的长度,不能越界使用。
如:
1 | int a = 1024 ; int arr[5] = {1,2,3,4,5}; // 完全初始化 |
对数组名称的理解
总的来说,环境不同,数组名称的意义就不同。
- 表示整个数组
在定义的时候
1
int arr[3]={0,1,2}
在sizeof语句中
1
int len=sizeof(arr)/sizeof(int); //求长度
在取地址&arr时
1
int *p=&arr;
- 在其余时候都表示数组中第一个元素的地址。
当数组名确定后,数组名就是一个地址常量,不能更改。但可以把数组赋值给指针。
1 | int *p; |