常用的字符串处理函数
字符串的输入和输出
输入函数:
- scanf(格式控制字符串,输入参数表)
格式控制说明符 %s , 输入参数 字符型数组名;与回车或者空格结束,将输入的数据和字符串结束符'\0'
送入数组。 - gets(s)
s是字符数组名,从输入得到一个字符串,遇到回车结束,将输入的数据和字符串结束符'\0'
送入数组。
字符串的复制、连接、比较及字符串的长度
#include<string.h>
- 字符串的复制函数
char *strcpy(char *s1,char *s2)
strcpy(s1,s2);
s1必须是字符型数组基地址,s2可以是字符数组名、字符串常量。
int i;
char s1[80],s2[80],from[80]="happy";
strcpy(str1,from);
strcpy(str2,key);
2.字符串连接函数strcat(s1,s2)
s1必须是字符型数组基地址,s2可以是字符数组名、字符串常量。
s1中原有的结束符被放到连接后结束位置上
char str1[80]="hello",str2[80],t[80]="world";
strcat(str1,t);
strcpy(str2,str1);
strcat(str2,"!");
C语言不允许使用算数加将字符数组直接连接即str1=str1+t
是非法的
3.字符串比较函数strcmp(s1,s2)
s1,s2可以是字符数组名、字符串常量。
- s1=s2,返回0
- s1>s2,返回正数
- s1<s2,返回负数
- 比较规则
从两个字符串的首字符开始依次比较相对应字符的ASCII码,到遇见不同的字符或**’\0’**为止
4.字符串的长度strlen(s1);
s1可以是字符数组名、字符串常量。
返回字符串s1'\0'
之前的字符个数