一维数组
数组是类型相同的元素的集合
熟知的一维数组命名通常以 元素类型 数组名 [元素个数]构成
例如 int arr[5]={0}
这里设计一些初始化的基本常识,不再赘述
主要是区分strlen,sizeof的不同:
1,strlen只能计算字符串的长度
sizeof可以计算字符串,类型,数组等等所占空间
2,strlen计算长度不包括\0,必须要看到\0才会停止计算,但是\0不包括在内
sizeof会读取到\0,并将其算为所占空间的一部分。
3,strlen是一种库函数,需要引头文件#include<string.h>
sizeof不需要
比如下面代码的输出值是多少呢
#include <stdio.h>
#include <string.h>
int main()
{
char arr1[]="abc";
char arr2[]={'a','b','c',0};
printf("%d\n",sizeof(arr1));
printf("%d\n",sizeof(arr2));
printf("%d\n",strlen(arr1));
printf("%d\n",strlen(arr2));
return 0;
}
答案是:3 4 随机值 3
二维数组
二维数组例如 int arr[3][4]={{1,2,3},{4,5}}
[3] 3代表这个数组有三行
[4] 4代表有四列
每一行,每一列依然是从0开始标号
{1,2,3}表示将这个二维数组看成两个三个一维数组,其中第一行也就是名字为arr[0]的一个一维数组
注意:行可以省略,但是列不可以