立即学习:https://edu.youkuaiyun.com/course/play/8088/171317?utm_source=blogtoedu
1. 字符数组初始化
char c[10] = {'I',' ','a' ,'m',' ','h','a','p','p','y' };
int i;
for (i = 0; i < 10; i++)
{
printf("%c", c[i]);
}
printf("\n");
如果提供的初值个数和预定的数组长度相同,定义时可以省略数组长度,系统会自动根据初值个数确定数组长度
若初值个数小于数组长度,则只将这些字符赋值给前面的那些元素,其余元素可能会给\0,也可能无法确定
2. 字符串和字符串结束标记(\0)
char c[] = { "I am happy" };//系统会自动在末尾增加一个\0,叫做字符串结束标记,相当于定义了c[11],即
char c[11] = { "I am happy" };
char c[11] = {'I',' ','a' ,'m',' ','h','a','p','p','y' ,'\0' };
char d[10] = { 'I',' ','a' ,'m',' ','h','a','p','p','y' };
printf("%s\n", d);
以字符串形式输出该字符数组时,可能会输出许多乱码,因为字符串输出以'\0'结束