//字符数组的初始化
char c1[3] = {'A','a','c'};
printf("%d\n", sizeof(c1)); //3
char c2[10] = { 'A', 'a', 'c'};
printf("%d\n", sizeof(c2)); //10
char c3[] = { 'A', 'a', 'c'};
printf("%d\n", sizeof(c3)); //3
char c42[] = { ' ' };
printf("%d\n", sizeof(c42)); //1
//字符串数组的初始化
char c5[] = "";
printf("%d\n", sizeof(c5)); //1
char c6[] = " ";
printf("%d\n", sizeof(c6)); //2
char c61[] = {""};
printf("%d\n", sizeof(c61)); //1
char c7[] = "Aac";
printf("%d\n", sizeof(c7)); //4
char c8[] = { "Aac" };
printf("%d\n", sizeof(c8)); //4
//字符数组初始化出错的几种情况:
char c4[] = {};
char c43[];
char c41[] = {''};
char cc[12];
cc = "hello";
//c语言规定数组名代表的是数组元素的首地址,是一个常量值,不能用赋值方法改变它。
需要用strcpy函数;
备注:
1、字符数组初始化,需要分配数组长度,要么在[]中定义数组大小,要么在{}存入数据,供系统自动分配数组大小。
2、而字符串数组就算不写入数据,系统也会自动分配“\0”字符。
C语言字符数组和字符串数组的初始化
最新推荐文章于 2024-03-17 18:26:03 发布