1 char a[20] = "hello";
printf ("%s\n",a); 程序不会出现错误
但是,如果char a[5] = "hello";
printf ("%s\n",a); 程序的结果会出现乱码,是因为printf函数在输出字符串时是输出到'\0'截止的
2 strcpy(字符数组1,字符串2)
作用是把字符串2复制到字符数组1中去,所以字符数组1必须可以容纳被复制的字符串2,包括字符串2中的'\0';
注意:“字符数组1”必须写成数组名的形式,“字符串2”可以是字符数组名,也可以是一个字符串常量
例如:
strcpy(str,“hello”);
只能用字符串复制函数将一个字符串复制到另一个字符数组中,不能通过赋值的形式
3 scanf函数输入字符串时遇到空格或者回车就会输入结束 所以无法获取一个带空格的字符串
gets(字符数组名)函数输入字符串时可以包含空格,是以回车结束的,这个函数的返回值是字符数组的起始地址