5、数组-一维数组

50 阅读1分钟

数组

为了解决比较复杂的问题,C语言提供一种最简单的构造类型——数组。
数组是具有相同数据类型的一组有序数据的集合。
同一数组中所有元素的数据类型是相同的,而一维数组常用于存储一行或一列的数据。

int arr[3] = {1, 2, 3};

内存相关:数组占用内存单元,在定义数组时必须指定数组元素的数据类型和数组元素的个数,这样才能为其分配相应的内存单元。

数组下标为什么是从0开始的

1、数组元素的下标是元素相对于数组首地址或起始地址的偏移量,所以从0开始顺序编号。
2、数组名表示整个数组所占用的内存空间的首地址。同一数组中的所有元素,按其下标的顺序占用若干连续的存储单元。

内存相关:一维数组占用的内存字节数=数组长度*每一元素占用的字节数,而且所占用的内存单元是连续的,并按照元素顺序依次排列。

int arr[3];  
//占用的内存字节数:3 * 2 =6 字节

注: 在定义一维数组时不允许方括号内出现变量,引用一维数组元素时方括号内允许出现变量。

#include <stdio.h>
int main(void) {
  int i, arr[] = {0, 1, 0, 0, 1};
  for (i = 0; i < 5; i++) printf("%d\n", arr[i]);
  
  return 0;
}

输出: 0,1,0,0,1