Latest web development tutorials

C 標準庫– <string.h>

簡介

string .h頭文件定義了一個變量類型、一個宏和各種操作字符數組的函數。

庫變量

下面是頭文件string.h 中定義的變量類型:

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

庫宏

下面是頭文件string.h 中定義的宏:

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

庫函數

下面是頭文件string.h 中定義的函數:

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