字符串
scanf 读入一个单词到空格、tab、或回车为止
为了防止输入溢出的情况 在%和s之间加数字来表示最多允许读入的字符数量
若char wold[8]但是输入超过7(系统会在字符串最后自动补上0)输出时程序会崩溃
应该改为printf("%7s",wold)
例:char wold[8];
char wold2[8];
scanf("%s",wold);
scanf("%s",wold2);
printf("%7s##\n",wold);
printf("%7s##",wold2);
输入
12345678
输出
1234567##
8##
常见错误
char*string;
scanf(“%s”,string);
以为char*是字符数串类型,定义一个字符串类型的变量string就可以用了,没有给string进行初始化;
char numb[100]="";
此字符串空字符串 char numb[0]=='\0'
char numb[]="";
char numb此数组的长度为1;
strlen函数
其形式为:strlen(字符数组)——测字符串长度的函数
作用是测试字符串长度的函数,函数的值为字符串实际的长度(不包括 '\0' 在内)。
strcmp函数
其形式为:strcmp(字符数组1,字符串2)——字符串比较的函数
//st1==st2 意思是比较他们的地址,且他们地址一定不一样
因为字符串不能用等号来比较大小,所以就用strcmp函数来比较!!!!!!
比较规则:
(1)如果全部字符相同,则认为两个字符串相等;
(2)若出现不相同的字符,则以第一对不相同的字符比较结果为准。('a'<'z';'A'<'Z')。
比较的结果由函数值带回:
(1)如果字符串1与字符串2相同,则函数值为0。
strcpy函数
其形式为:strcpy(字符数组1,字符串2)——字符串复制的函数
作用是将字符串2复制到字符数组1中去。
等同
strcat函数
其形式为:strcat(字符数组1,字符数组2)——字符串连接的函数
作用是把两个字符数组中的字符串连接起来,把字符串2连接到字符串1的后面,结果放在字符数组1中。(字符1一定要够长)
strchr函数
其形式为stechr(字符数组,所要找的数)
作用是在字符数组中找到我们要找的字符,输出所要找的字符否则Null
strstr函数
其形式为:strstr(字符串1,字符串2)——查找字符串的函数
函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。
如果找到该数组,就会从找到的地方开始输出;