极客学院团队出品 · 更新于 2018-11-28 11:00:42

C 标准库- < string.h >

简介

string .h 头文件定义了一个变量类型、一个宏和各种操作字符数组的函数。

库变量

下面是头文件 string.h 中定义的变量类型:

序号变量 & 描述
1size_t
这是无符号整数类型,它是 sizeof 关键字的结果。

库宏

下面是头文件 string.h 中定义的宏:

序号宏 & 描述
1NULL
这个宏是一个空指针常量的值。

库函数

下面是头文件 string.h 中定义的函数:

序号函数 & 描述
1void memchr(const void str, int c, size_t n)
在参数 str 所指向的字符串的前 n 个字节中搜索第一次出现字符 c(一个无符号字符)的位置。
2int memcmp(const void str1, const void str2, size_t n)
str1str2 的前 n 个字节进行比较。
3void memcpy(void dest, const void src, size_t n)
从 src 复制 n 个字符到 dest
4void memmove(void dest, const void src, size_t n)
另一个用于从 str2 复制 n 个字符到 str1 的函数。
5void memset(void str, int c, size_t n)
复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符。
6char strcat(char dest, const char src)
src 所指向的字符串追加到 dest 所指向的字符串的结尾。
7char strncat(char dest, const char src, size_t n)
src 所指向的字符串追加到 dest 所指向的字符串的结尾,直到 n 字符长度为止。
8char strchr(const char str, int c)
在参数 str 所指向的字符串中搜索第一次出现字符 c(一个无符号字符)的位置。
9int strcmp(const char str1, const char str2)
str1 所指向的字符串和 str2 所指向的字符串进行比较。
10int strncmp(const char str1, const char str2, size_t n)
str1str2 进行比较,最多比较前 n 个字节。
11int strcoll(const char str1, const char str2)
str1str2 进行比较,结果取决于 LC_COLLATE 的位置设置。
12char strcpy(char dest, const char src)
src 所指向的字符串复制到 dest
13char strncpy(char dest, const char src, size_t n)
src 所指向的字符串复制到 dest,最多复制 n 个字符。
14size_t strcspn(const char str1, const char str2)
检索字符串 str1 开头连续有几个字符都不含字符串 str2 中的字符。
15char strerror(int errnum)
从内部数组中搜索错误号 errnum,并返回一个指向错误消息字符串的指针。
16size_t strlen(const char str)
计算字符串 str 的长度,直到空结束字符,但不包括空结束字符。
17char strpbrk(const char str1, const char str2)
检索字符串 str1 中第一个匹配字符串 str2 中字符的字符,不包含空结束字符。也就是说,依次检验字符串 str1 中的字符,当被检验字符在字符串 str2 中也包含时,则停止检验,并返回该字符位置。
18char strrchr(const char str, int c)
在参数 str 所指向的字符串中搜索最后一次出现字符 c(一个无符号字符)的位置。
19size_t strspn(const char str1, const char str2)
检索字符串 str1 中第一个不在字符串 str2 中出现的字符下标。
20char strstr(const char haystack, const char needle)
在字符串 haystack 中查找第一次出现字符串 needle(不包含空结束字符)的位置。
21char strtok(char str, const char delim)
分解字符串 str 为一组字符串,delim 为分隔符。
22size_t strxfrm(char dest, const char *src, size_t n)
根据程序当前的区域选项中的 LC_COLLATE 来转换字符串 src 的前 n 个字符,并把它们放置在字符串 dest 中。