一,一维数组
数组初始化:
//完全初始化
int arr[5]={1,2,3,4,5};
//不完全初始化
int arr2[5]={1};//第一个元素初始化为1,剩余元素初始化为0;
二,sizeof计算数组元素个数
- sizeof可以计算数组元素大小(字节)
#include <stdio.h>
int main()
{
int arr[10]={0};
printf("%d\n",sizeof(arr[0]));
return 0;
}
- sizeof计算数组大小
#include <stdio.h>
int main()
{
int arr[10]={0};
printf("%d",sizeof(arr));
return 0;
}
- sizeof计算元素个数
#include <stdio.h>
int main()
{
int arr[10]={0};
printf("%d",sizeof(arr)/sizeof(arr[0]);
return 0;
}
三,二维数组
二维数组初始化:行可省,列不可省
int arr[][5]={1,2,3,4,5}
;
按照行初始化
int arr[3][4]={{1,2,3,0},{4,5,6,0},{7,8,9,0}};
二维数组每个元素连续存放
四,变长数组
int n=a+b;
int arr[n];
C99变长数组在编译时大小不确定,只有在运行时才能确定,故不能初始化