C语言中没有提供对字符串进行整体操作的运算符,但在C语言的函数库中提供了一些用来处理字符串的函数。在调用这些函数前,需在程序前面的命令行包含标准头文件“string.h”。
- puts():调用形式为puts(字符数组),将一个字符串(以‘\0’结束)输出到终端设备。
- gets():调用形式为gets(字符数组),从终端输入一个字符串到字符数组中,并且得到一个函数值。
int main()
{
char str[5];
gets_s(str, 5); //gets_s(字符数组名,缓冲区的大小)
puts(str);
return 0;
}
- strcpy():调用形式为strcpy(字符数组1,字符数组2),把字符数组2所指字符串的内容复制到字符数组1所指存储空间中。函数返回字符数组1的值,即目的串的首地址。
int main(void)
{
char str1[15];
char str2[6] ="world";
strcpy_s(str1,str2); //将str2字符数组复制到str1中,str1的容量必须比str2大
printf("%s\n",str1);
strncpy_s(str1,str2,3); //将str2前3个字符复制到str1中
puts(str1);
return 0;
}
- strcat():调用形式为strcat(字符数组1,字符数组2),该函数将字符数组2所指字符串的内容连接到字符数组1所指所指字符串后面,并自动覆盖字符数组1串末尾的‘\0’。该函数返回字符数组1的地址值。
int main(void)
{
char str1[15] = "hello";
char str2[6] = "world";
strcat_s(str1,str2);
printf(%s\n",str1);
return 0;
}
- strlen():调用形式为strlen(字符数组),此函数计算出以字符数组为起始地址的字符串的长度,并作为函数值返回。
int main()
{
char str[15]="hello";
printf("%d\n",strlen(str));
return 0;
}
- strcmp():调用形式为strcmp(字符数组1,字符数组2),该函数用来比较字符数组1和字符数组2所指字符串的大小。若字符数组1>字符数组2,函数值大于0(正数);若字符数组1=字符数组2,函数返回值等于0;若字符数组1<字符数组2,函数值小于0(负数)。
int main(void)
{
char str1[15]="hello";
char str2[6] ="world";
printf("%d\n",strcmp(str1,str2));
return 0;
}