首先要区分,字符,字符数组,字符串的区别。 字符串默认的最后会有’\0’ char k = ‘a’; //定义的一个字符变量,并赋值为’a’字符 char a[10]; //定义一个size为10的字符数组,未初始化 char b[10] = {‘a’, ‘b’,‘c’}; //定义字符数组,并用一组字符初始化,此时后面不会自动加上’\0’ char c[10] = {“abc”}; //定义字符数组,并用“字符串”初始化(双引号内部的是字符串),字符串后面会自动加上’\0’ 此外: 对于char a[10]; gets(a); scanf("%s", a);这两种方法为a的元素赋值,默认的最后会有’\0’. 这两个函数都人为输入的是字符串 for(int i = 0; i < num ; i ++) scanf("%c", &a[i]);//这种方法,是每次读入一个字符。这时不会自动在后面加上’\0’
转自https://zhidao.baidu.com/question/1833915413771991500.html?ivk_sa=1022817r
2021-09-05
最新推荐文章于 2021-09-05 23:50:31 发布