string.h头文件中包含了许多用于 字符数组的函数,使用以下函数时需要在程序开头添加string.h头文件。
strlen()
strlen()函数可以得到字符数组中第一个\0前的字符的个数。
格式:
strlen(字符数组);
举例:
#include<stdio.h>
#include<string.h>
int main(){
char str[10];
gets(str);
int len = strlen(str);
printf("%d\n",len);
return 0;
}
strcmp()
strcmp()函数返回两个字符串大小的比较结果,比较原则是字典序,格式如下:
strcmp(字符数组1,字符数组2);
如果字符数组1 < 字符数组2,则返回一个负整数
如果字符数组1 > 字符数组2,则返回一个正整数
如果字符数组1 == 字符数组2,则返回0
#include<string.h>
#include<stdio.h>
int main(){
char str1[50],str2[50];
gets(str1);
gets(str2);
int cmp = strcmp(str1,str2);
if(cmp<0) printf("str1<str2\n");
else if(cmp>0) printf("str1>str2\n");
else printf("str1 == str2\n");
return 0;
}
strcpy()
strcpy()函数可以把一个字符串复制给另一个字符串,其格式如下:
strcpy(字符数组1, 字符数组2)
是把字符数组2复制给字符数组1,这里的“复制”包含了结束符"\0"。
#include<string.h>
#include<stdio.h>
int main(){
char str1[50],str2[50];
gets(str1);
gets(str2);
strcpy(str1,str2);
puts(str1);
return 0;
}
strcat()
strcat()可以把一个字符串接到另一个字符串后面,其格式如下:
strcat(字符数组1,字符数组2)
是把字符数组2接到字符数组1后面
#include<string.h>
#include<stdio.h>
int main(){
char str1[50],str2[50];
gets(str1);
gets(str2);
strcat(str1,str2);
puts(str1);
return 0;