该文档是关于C语言中字符串处理函数的综合指南,涵盖了如strcpy(), strncpy(), strcat(), strncat(), strcmp(), strncmp(), strchar(), strrchr(), strspn(), strcspn(), strpbrk(), strstr(), strlen(), strerror(), 和 strtok()等多个常用函数的介绍及使用示例。
1. strcpy() 函数:
功能:将源字符串(source)完整地复制到目标字符串(destin)中。
用法:char *strcpy(char *destin, char *source);
示例:
```c
char string[10];
char *str1 = "abcdefghi";
strcpy(string, str1);
printf("%s\n", string);
```
2. strcat() 函数:
功能:将源字符串(source)追加到目标字符串(destin)的末尾。
用法:char *strcat(char *destin, char *source);
示例:
```c
char destination[25];
char *blank = "", *c = "C++", *Borland = "Borland";
strcpy(destination, Borland);
strcat(destination, blank);
strcat(destination, c);
printf("%s\n", destination);
```
3. strchr() 函数:
功能:在字符串(str)中查找指定字符(c)首次出现的位置。
用法:char *strchr(char *str, char c);
示例:
```c
char string[15];
char *ptr, c = 'r';
strcpy(string, "Thisisastring");
ptr = strchr(string, c);
if (ptr)
printf("The character %c is at position: %d\n", c, ptr - string);
else
printf("The character was not found\n");
```
4. strcmp() 函数:
功能:比较两个字符串(str1, str2)。若str1>str2,返回值>0;两串相等,返回0;str1<str2,返回值<0。
用法:int strcmp(char *str1, char *str2);
示例:
```c
char *buf1 = "";
// ...
int result = strcmp(buf1, "Hello");
if (result > 0)
printf("buf1大于Hello\n");
else if (result < 0)
printf("buf1小于Hello\n");
else
printf("buf1等于Hello\n");
```
以上只是部分函数的介绍,实际上C语言中的字符串处理函数还包括其他如strncpy()用于限制复制的字符数,strncat()用于有限次数的拼接,strncmp()用于比较部分字符串,strpbrk()找到特定字符集的首次出现,strrchr()找到字符串中指定字符的最后一次出现,strspn()返回连续匹配字符集的子串长度,strcspn()返回不匹配字符集的子串长度,strstr()查找子串首次出现的位置,strlen()返回字符串的长度,strerror()返回错误消息字符串,以及strtok()用于分隔字符串的Token化操作。这些函数在处理和操作字符串时非常实用,熟练掌握它们能有效提高编程效率。