文章目录
一、数组本质
二、数组长度定义
三、数组初始化
1、编译时初始化
2、显式初始化 ( 重置内存 )
一、数组本质
数组本质 :
类型角度 : 从 数组元素 类型角度分析 , 数组是 相同类型 变量的 有序集合 ;
内存角度 : 从 内存角度 分析 , 数组 是 一块连续的 内存空间 ;
数组变量 占用的 内存大小 , 就是 数组本身的内存大小 ; 指针变量 占用的 内存大小 只有 4 44 字节 ;
二、数组长度定义
数组长度定义 :
显示指定数组长度 : 数组定义时 , 在 [] 中显示指定数组长度 ;
int array[3];
隐式指定数组长度 : 数组定义时 , 在 [] 中不指定数组长度 , 在后面的初始化的数组值中 , 初始化的元素个数就是数组的长度 ;
int array[] = {1, 2, 3};
三、数组初始化
1、编译时初始化
下面的操作 , 在编译时 , 就确定了 数组 初始化值 ;
隐式指定长度 , 顺便初始化 , 数组长度 3 33 , 初始化 3 33 个数组元素 ;
int array[] = {1, 2, 3};
显示指定长度 , 数组中有 3 33 个元素 , 为 3 33 个元素都指定初始值 ;
int array[3] = {1, 2, 3}
显示指定长度 , 数组中有 3 33 个元素 , 仅为第一个数组元素指定了 1 初始值 , 第 2 , 3 2,32,3 个元素默认为 0 值 ;
int array[3] = {1}
显示指定长度 , 数组中有 3 33 个元素 , 3 33 个元素 , 都默认指定为 0 值 ;
int array[3] = {0}
2、显式初始化 ( 重置内存 )
使用 memset 函数 , 显示初始化 数组 内存空间 ;
int array[3] = {0}; memset(array, 0, sizeof(array));