1、不完全初始化:
int arr[10] = {1,2,3,4} 剩下的元素默认初始化为0。
2、char arr[5] = {"a”,“98”}
这个是可行的,98默认为ASCLL码值。
3、数组地址中是连续存放的。
4、int arr[3][4] = {{1,2,3},{4,5}}
二维数组的创建是前一个行,第二个为列。也可当为一维数组来创建。
5、一般情况下,数组名都只是第一个元素的地址。但是有两种情况下数组名取全部元素的地址:第一种为操作符sizeof,在计算空间的时候,取全部元素的地址。第二种为取地址符 &arr 后面是整个数组。
6、数组的类型就是数组去掉数组名。
7.对于字符数组后面是否要加‘\0’,有以下几种情况:
第一种: char str[10] = {'h','e','l','l','o'};
如果大括号中的字符个数小于字符数组的长度,则把大括号中的字符赋给数组中前面的元素,其余元素自动赋值为空字符(即‘\0’)。
第二种:char str[5] = {'h','e','l','l','o'};
对于大括号中的字符个数和数组长度相同,系统不会自动添加'\0'。对于这种赋值方式,需要手动添加‘\0’;
即:char str[6] = {'h','e','l','l','o', '\0'};
第三种:char str[] = "hello";
系统会自动在后面添加‘\0’;