# C 標準庫 - <string.h>
## 簡介
**string .h** 頭文件定義了一個變量類型、一個宏和各種操作字符數組的函數。
## 庫變量
下面是頭文件 string.h 中定義的變量類型:
| 變量 | 描述 |
| --- | --- |
| **size_t** | 這是無符號整數類型,它是 **sizeof** 關鍵字的結果。 |
## 庫宏
下面是頭文件 string.h 中定義的宏:
| 宏 | 描述 |
| --- | --- |
| **NULL** | 這個宏是一個空指針常量的值。 |
## 庫函數
下面是頭文件 string.h 中定義的函數:
| 函數 | 描述 |
| --- | --- |
| [void \*memchr(const void \*str, int c, size_t n)](c-function-memchr.html) | 在參數 _str_ 所指向的字符串的前 n 個字節中搜索第一次出現字符 c(一個無符號字符)的位置。 |
| [int memcmp(const void \*str1, const void \*str2, size_t n)](c-function-memcmp.html) | 把 _str1_ 和 _str2_ 的前 n 個字節進行比較。 |
| [void \*memcpy(void \*dest, const void \*src, size_t n)](c-function-memcpy.html) | 從 src 復制 n 個字符到 _dest_。 |
| [void \*memmove(void \*dest, const void \*src, size_t n)](c-function-memmove.html) | 另一個用于從 _str2_ 復制 n 個字符到 _str1_ 的函數。 |
| [void \*memset(void \*str, int c, size_t n)](c-function-memset.html) | 復制字符 c(一個無符號字符)到參數 _str_ 所指向的字符串的前 n 個字符。 |
| [char \*strcat(char \*dest, const char \*src)](c-function-strcat.html) | 把 _src_ 所指向的字符串追加到 _dest_ 所指向的字符串的結尾。 |
| [char \*strncat(char \*dest, const char \*src, size_t n)](c-function-strncat.html) | 把 _src_ 所指向的字符串追加到 _dest_ 所指向的字符串的結尾,直到 n 字符長度為止。 |
| [char \*strchr(const char \*str, int c)](c-function-strchr.html) | 在參數 _str_ 所指向的字符串中搜索第一次出現字符 c(一個無符號字符)的位置。 |
| [int strcmp(const char \*str1, const char \*str2)](c-function-strcmp.html) | 把 _str1_ 所指向的字符串和 _str2_ 所指向的字符串進行比較。 |
| [int strncmp(const char \*str1, const char \*str2, size_t n)](c-function-strncmp.html) | 把 _str1_ 和 _str2_ 進行比較,最多比較前 n 個字節。 |
| [int strcoll(const char \*str1, const char \*str2)](c-function-strcoll.html) | 把 _str1_ 和 _str2_ 進行比較,結果取決于 LC_COLLATE 的位置設置。 |
| [char \*strcpy(char \*dest, const char \*src)](c-function-strcpy.html) | 把 _src_ 所指向的字符串復制到 _dest_。 |
| [char \*strncpy(char \*dest, const char \*src, size_t n)](c-function-strncpy.html) | 把 _src_ 所指向的字符串復制到 _dest_,最多復制 n 個字符。 |
| [size_t strcspn(const char \*str1, const char \*str2)](c-function-strcspn.html) | 檢索字符串 str1 開頭連續有幾個字符都不含字符串 str2 中的字符。 |
| [char \*strerror(int errnum)](c-function-strerror.html) | 從內部數組中搜索錯誤號 errnum,并返回一個指向錯誤消息字符串的指針。 |
| [size_t strlen(const char \*str)](c-function-strlen.html) | 計算字符串 str 的長度,直到空結束字符串,但不包括空結束字符串。 |
| [char \*strpbrk(const char \*str1, const char \*str2)](c-function-strpbrk.html) | 檢索字符串 _str1_ 中匹配字符串 _str2_ 中所指定的字符的第一個字符。也就是說,依次檢驗字符串s1中的字符,當被檢驗字符在字符串s2中也包含時,則停止檢驗,并返回該字符位置。 |
| [char \*strrchr(const char \*str, int c)](c-function-strrchr.html) | 在參數 _str_ 所指向的字符串中搜索最后一次出現字符 c(一個無符號字符)的位置。 |
| [size_t strspn(const char \*str1, const char \*str2)](c-function-strspn.html) | 檢索字符串 _str1_ 開頭連續有幾個字符都不含字符串 _str2_ 中的字符。 |
| [char \*strstr(const char \*haystack, const char \*needle)](c-function-strstr.html) | 在字符串 _haystack_ 中查找第一次出現字符串 _needle_(不包含空結束字符串)的位置。 |
| [char \*strtok(char \*str, const char \*delim)](c-function-strtok.html) | 分解字符串 _str_ 為一組字符串,_delim_ 為分隔符。 |
| [size_t strxfrm(char \*dest, const char \*src, size_t n)](c-function-strxfrm.html) | 根據程序當前的區域選項中的 LC_COLLATE 來轉換字符串 \*\*src\*\* 的前 \*\*n\*\* 個字符,并把它們放置在字符串 \*\*dest\*\* 中。 |
- C語言教程
- C 簡介
- C 環境設置
- C 程序結構
- C 基本語法
- C 數據類型
- C 變量
- C 常量
- C 存儲類
- C 運算符
- C 判斷
- C 循環
- C 函數
- C 作用域規則
- C 數組
- C 指針
- C 字符串
- C 結構體
- C 共用體
- C 位域
- C typedef
- C 輸入 & 輸出
- C 文件讀寫
- C 預處理器
- C 頭文件
- C 強制類型轉換
- C 錯誤處理
- C 遞歸
- C 可變參數
- C 內存管理
- C 命令行參數
- C語言參考
- C 標準庫 - <assert.h>
- C 庫宏 - assert()
- C 標準庫 - <ctype.h>
- C 庫函數 - isalnum()
- C 庫函數 - isalpha()
- C 庫函數 - iscntrl()
- C 庫函數 - isdigit()
- C 庫函數 - isgraph()
- C 庫函數 - islower()
- C 庫函數 - isprint()
- C 庫函數 - ispunct()
- C 庫函數 - isspace()
- C 庫函數 - isupper()
- C 庫函數 - isxdigit()
- C 標準庫 - <errno.h>
- C 庫宏 - errno
- C 庫宏 - EDOM
- C 庫宏 - ERANGE
- C 標準庫 - <float.h>
- C 標準庫 - <limits.h>
- C 標準庫 - <locale.h>
- C 庫函數 - setlocale()
- C 庫函數 - localeconv()
- C 標準庫 - <math.h>
- C 庫函數 - acos()
- C 庫函數 - asin()
- C 庫函數 - atan()
- C 庫函數 - atan2()
- C 庫函數 - cos()
- C 庫函數 - cosh()
- C 庫函數 - sin()
- C 庫函數 - sinh()
- C 庫函數 - tanh()
- C 庫函數 - exp()
- C 庫函數 - frexp()
- C 庫函數 - ldexp()
- C 庫函數 - log()
- C 庫函數 - log10()
- C 庫函數 - modf()
- C 庫函數 - pow()
- C 庫函數 - sqrt()
- C 庫函數 - ceil()
- C 庫函數 - fabs()
- C 庫函數 - floor()
- C 庫函數 - fmod()
- C 標準庫 - <setjmp.h>
- C 庫宏 - setjmp()
- C 庫函數 - longjmp()
- C 標準庫 - <signal.h>
- C 庫函數 - signal()
- C 庫函數 - raise()
- C 標準庫 - <stdarg.h>
- C 庫宏 - va_start()
- C 庫宏 - va_arg()
- C 庫宏 - va_end()
- C 標準庫 - <stddef.h>
- C 庫宏 - NULL
- C 庫宏 - offsetof()
- C 標準庫 - <stdio.h>
- C 庫函數 - fclose()
- C 庫函數 - clearerr()
- C 庫函數 - feof()
- C 庫函數 - ferror()
- C 庫函數 - fflush()
- C 庫函數 - fgetpos()
- C 庫函數 - fopen()
- C 庫函數 - fread()
- C 庫函數 - freopen()
- C 庫函數 - fseek()
- C 庫函數 - fsetpos()
- C 庫函數 - ftell()
- C 庫函數 - fwrite()
- C 庫函數 - remove()
- C 庫函數 - rename()
- C 庫函數 - rewind()
- C 庫函數 - setbuf()
- C 庫函數 - tmpfile()
- C 庫函數 - tmpnam()
- C 庫函數 - fprintf()
- C 庫函數 - printf()
- C 庫函數 - sprintf()
- C 庫函數 - vfprintf()
- C 庫函數 - vprintf()
- C 庫函數 - vsprintf()
- C 庫函數 - fscanf()
- C 庫函數 - scanf()
- C 庫函數 - sscanf()
- C 庫函數 - fgetc()
- C 庫函數 - fgets()
- C 庫函數 - fputc()
- C 庫函數 - fputs()
- C 庫函數 - getc()
- C 庫函數 - getchar()
- C 庫函數 - gets()
- C 庫函數 - putc()
- C 庫函數 - putchar()
- C 庫函數 - puts()
- C 庫函數 - ungetc()
- C 庫函數 - perror()
- C 標準庫 - <stdlib.h>
- C 庫函數 - atof()
- C 庫函數 - atoi()
- C 庫函數 - atol()
- C 庫函數 - strtod()
- C 庫函數 - strtol()
- C 庫函數 - strtoul()
- C 庫函數 - calloc()
- C 庫函數 - free()
- C 庫函數 - malloc()
- C 庫函數 - realloc()
- C 庫函數 - abort()
- C 庫函數 - atexit()
- C 庫函數 - exit()
- C 庫函數 - getenv()
- C 庫函數 - system()
- C 庫函數 - bsearch()
- C 庫函數 - qsort()
- C 庫函數 - abs()
- C 庫函數 - div()
- C 庫函數 - labs()
- C 庫函數 - ldiv()
- C 庫函數 - rand()
- C 庫函數 - srand()
- C 庫函數 - mblen()
- C 庫函數 - mbstowcs()
- C 庫函數 - mbtowc()
- C 庫函數 - wcstombs()
- C 庫函數 - wctomb()
- C 標準庫 - <string.h>
- C 庫函數 - memchr()
- C 庫函數 - memcmp()
- C 庫函數 - memcpy()
- C 庫函數 - memmove()
- C 庫函數 - memset()
- C 庫函數 - strcat()
- C 庫函數 - strncat()
- C 庫函數 - strchr()
- C 庫函數 - strcmp()
- C 庫函數 - strncmp()
- C 庫函數 - strcoll()
- C 庫函數 - strcpy()
- C 庫函數 - strncpy()
- C 庫函數 - strcspn()
- C 庫函數 - strerror()
- C 庫函數 - strlen()
- C 庫函數 - strpbrk()
- C 庫函數 - strrchr()
- C 庫函數 - strspn()
- C 庫函數 - strstr()
- C 庫函數 - strtok()
- C 庫函數 - strxfrm()
- C 標準庫 - <time.h>
- C 庫函數 - asctime()
- C 庫函數 - clock()
- C 庫函數 - ctime()
- C 庫函數 - difftime()
- C 庫函數 - gmtime()
- C 庫函數 - localtime()
- C 庫函數 - mktime()
- C 庫函數 - strftime()
- C 庫函數 - time()
- 免責聲明