C 语言标准库 - <string.h>
C 语言标准库 <string .h> 头文件定义了一个变量类型、一个宏和各种操作字符数组的函数
变量类型定义
下表是头文件 <string.h> 中定义的变量类型
| 变量 | 描述 |
|---|---|
| size_t | unsigned long 的别名,是 sizeof 关键字的结果 |
宏定义
下表是头文件 <string.h> 中定义的宏
| 宏 | 描述 |
|---|---|
| NULL | 这个宏是一个空指针常量的值 |
函数定义
下列是头文件 <string.h> 中定义的函数
-
- void memchr(const void str, int c, size_t n)
- 在参数
str所指向的字符串的前n个字节中搜索第一次出现字符 c(一个无符号字符)的位置
-
- int memcmp(const void str1, const void str2, size_t n)
- 把
str1和str2的前 n 个字节进行比较
-
- void memcpy(void dest, const void *src, size_t n)
- 从
src复制n个字符到dest
-
- void memmove(void dest, const void *src, size_t n)
- 另一个用于从
str2复制n个字符到str1的函数
-
- void memset(void str, int c, size_t n)
- 复制字符
c(一个无符号字符)到参数str所指向的字符串的前n个字符
-
- char strcat(char dest, const char *src)
- 把
src所指向的字符串追加到dest所指向的字符串的结尾
-
- char strncat(char dest, const char *src, size_t n)
- 把
src所指向的字符串追加到dest所指向的字符串的结尾,直到n字符长度为止
-
- char strchr(const char str, int c)
- 在参数
str所指向的字符串中搜索第一次出现字符c(一个无符号字符)的位置
-
- int strcmp(const char str1, const char str2)
- 把
str1所指向的字符串和str2所指向的字符串进行比较
-
- int strncmp(const char str1, const char str2, size_t n)
- 把
str1和str2进行比较,最多比较前n个字节
-
- int strcoll(const char str1, const char str2)
- 把
str1和str2进行比较,结果取决于LC_COLLATE的位置设置
-
- char strcpy(char dest, const char *src)
- 把
src所指向的字符串复制到dest
-
- char strncpy(char dest, const char *src, size_t n)
- 把
src所指向的字符串复制到dest,最多复制n个字符
-
- size_t strcspn(const char str1, const char str2)
- 检索字符串
str1开头连续有几个字符都不含字符串str2中的字符
-
- char *strerror(int errnum)
- 从内部数组中搜索错误号
errnum,并返回一个指向错误消息字符串的指针
-
- size_t strlen(const char *str)
- 计算字符串
str的长度,直到空结束字符,但不包括空结束字符
-
- char strpbrk(const char str1, const char *str2)
- 检索字符串
str1中第一个匹配字符串str2中字符的字符,不包含空结束字符。 也就是说,依次检验字符串str1中的字符,当被检验字符在字符串str2中也包含时,则停止检验,并返回该字符位置
-
- char strrchr(const char str, int c)
- 在参数
str所指向的字符串中搜索最后一次出现字符c(一个无符号字符)的位置
-
- size_t strspn(const char str1, const char str2)
- 检索字符串
str1中第一个不在字符串str2中出现的字符下标
-
- char strstr(const char haystack, const char *needle)
- 在字符串
haystack中查找第一次出现字符串needle(不包含空结束字符)的位置
-
- char strtok(char str, const char *delim)
- 分解字符串
str为一组字符串,delim为分隔符
-
- size_t strxfrm(char dest, const char src, size_t n)
- 根据程序当前的区域选项中的
LC_COLLATE来转换字符串src的前n个字符,并把它们放置在字符串dest中