- 头文件
#include<string.h>
字符串函数
-
字符串长度函数
strlen(str)
(返回值是实际字符串长度不包括‘\0‘) -
字符串拷贝函数
-
strcyp(dest, src)
(将src拷贝到dest,'\0' 也一同拷贝) -
strncpy(s1, s2, n)
(复制指定长度字符串)
#include<stdio.h> #include<string.h> int main() { char s1[] = "1234567"; char s2[] = "abc"; puts(strncpy(s1, s2, 2)); return 0; }
在屏幕上打印出:ab34567
-
-
字符串连接函数
strcat(dest, src)
(将src字符串连接到dest之后,dest原有的 '\0' 被覆盖,src的 '\0' 将被拷入dest中)- 注意dest的长度必须足够接收src的所有字符(包括 '\0')否则将可能引起严重的错误。有时不会触发运行时错误而运行出看似正确的结果,但即便后续的内存是可写的,但也许其中存着其他数据,写越界就有可能覆盖这些数据,引起其他bug,这是严重的安全隐患!
strncat(s1, s2, n)
(附加指定长度字符串)
-
字符串比较函数
strcmp(str1, str2)
(逐个字符比较ASCⅡ码)- str1 == str2,返回0
- str1 > str2,返回正整数 1
- str1 < str2,返回负整数 -1
- 如果不是字符串对比则结果可能未知(比如用字符数组和字符串对比)
strcasecmp
(忽略大写小比较字符串)strncmp(s1, s2, n)
(比较指定长度字符串)
-
返回字符串地址
-
strchr(str, c)
(在字符中正序查找指定字符第一次出现的位置,返回值是地址) -
strrchr(str, c)
(在字符中逆序查找指定字符第一次出现的位置,返回值是地址) -
strstr(s1, s2)
(查找子字符串s2在s1中的位置,返回值是地址)
-
字符函数
头文件 #include<ctype.h>
字符检查函数
isalpha(c)
(检查字符类型。大、小写字母与非字符分别返回1,2,0)isupper(c)
(检查字符类型。大写字母与非大写分别返回1,0)islower(c)
(检查字符类型。小写字母与非小写分别返回2,0)isdigit(c)
(检查字符类型。数字与非数字分别返回1,0)
来源:https://www.cnblogs.com/huochemeiyouhuo/p/11234438.html