目录
以下函数头文件均为:#include <string.h>
1.strcpy
原型:
char *strcpy(char *dest, const char *src)
返回值:
一个指向最终的目标字符串dest的char类型指针。
用法及注意事项:
(1)把src所指向的字符串复制到dest处。如果目标数组dest不够大,而源字符串的长度又太长,可能会造成缓冲溢出的情况。
(2)第一个参数不必指向数组的开始,这个特性可用于拷贝数组的一部分。
2.strncpy
原型:
char *strncpy(char *dest, const char *src, size_t n)
返回值:
一个指向最终的目标字符串dest的char类型指针。
用法及注意事项:
(1)把src所指向的字符串复制到dest的首地址,最多拷贝n个字符,当src的长度小于n时,dest的剩余部分将用空字节填充。如果src的长度大于n,则拷贝n个字符到dest的第一个\0处,并且结尾不会加上\0。可以手动加。
(2)拷贝位置是dest的首地址,不会把dest字符串删除,只是把dest前n个字符改为src的前n个字符。
(3)但是如果使用strncpy_s便会清除str1中的全部字符串,再拷贝src。
3.strcat
原型:
char *strcat(char *dest, const char *src)
返回值:
一个指向最终的目标字符串dest的char类型指针。
用法及注意事项:
(1)将参数 src 字符串复制到参数 dest 所指的字符串尾部(第一个\0处);dest 最后的结束字符 NULL (\0)会被覆盖掉,并在连接后的字符串的尾部再增加一个 NULL。
(2)追加的字符串src和目标字符串dest中都必须要带有字符’\0’,并且追加字符串src必须以‘\0’结尾,否则追加过程无法顺利实现。
(3)目标字符串空间必须足够大(足够容纳下追加字符串src的内容)。
(4)目标空间必须可修改(前面不能加const并且不能说常量字符串)。
4.strcmp
原型:
int strcmp(const char *s1,const char *s2)
返回值:
自左向右逐个按照ASCII码值进行比较,直到出现不同的字符或遇’\0’为止。
返回值为s1和s2相减的结果。
5.strchr
原型:
strchr(str,c);
strrchr(str,c);
strstr(str1,str2);
返回值:
str字符串中查找首次出现字符c的位置(从字符串的首地址开始查找);
在字符串str中从后向前开始查找字符c首次出现的位置;
在字符串str1中查找字符串str2的位置,若找到,则返回str2第一个字符在str1中的位置的指针,若没找到,返回NULL
6.strpbrk
原型:
strpbrk(str1,str2)
返回值:
第一个两个字符串中都包含的字符在str1中的位置的指针。