string.h頭文件中包含的字符串函數
void?*memcpy(void?*dest,?const?void?*src,?size_t?n);//將n字節長的內容從壹個內存地址復制到另壹個地址;如果兩個地址存在重疊,則最終行為未定義void?*memmove(void?*dest,?const?void?*src,?size_t?n);//將n字節長的內容從壹個內存地址復制到另壹個地址;與memcpy不同的是它可以正確作用於兩個存在重疊的地址
void?*memchr(const?void?*s,?char?c,?size_t?n);//在從s開始的n個字節內查找c第壹次出現的地址並返回,若未找到則返回NULL
int?memcmp(const?void?*s1,?const?void?*s2,?size_t?n);//對從兩個內存地址開始的n個字符進行比較
void?*memset(void?*,?int,?size_t);//用某種字節內容覆寫壹段內存空間
char?*strcat(char?*dest,?const?char?*src);//在字符串dest之後連接上src
char?*strncat(char?*dest,?const?char?*src,?size_t?n);//從src截取n個字符連接在字符串dest之後,返回dest字符串
char?*strchr(const?char*?str,?int?ch);//從字符串str頭開始查找字符ch首次出現的位置
char?*strrchr(const?char*?str,int?ch);//從字符串str尾開始查找字符ch首次出現的位置
int?strcmp(const?char?*,?const?char?*);//基於字典順序比較兩個字符串
int?strncmp(const?char?*,?const?char?*,?size_t);//基於字典順序比較兩個字符串,最多比較n個字節
int?strcoll(const?char?*,?const?char?*);//基於當前區域設置的字符順序比較兩個字符串
char?*strcpy(char*?str1,?const?char*?str2);//將str2拷貝給str1
char?*strncpy(char*?str1,?const?char*?str2,?size_t?n);//截取str2的n個字符拷貝給str1
char?*strerror(int);//返回錯誤碼對應的解釋字符串,參見errno.h(非線程安全函數)
size_t?strlen(const?char?*);//返回壹個字符串的長度
size_t?strspn(const?char?*s,?const?char?*strCharSet);//從字符串s的起始處開始,尋找第壹個不出現在strCharSet中的字符,返回其位置索引值。換句話說,返回從字符串s的起始位置的完全由strCharSet中的字符構成的子串的最大長度。strspn為string?span的縮寫。不支持多字節字符集。
size_t?strcspn(const?char?*s,?const?char?*strCharSet);//從字符串s的起始處開始,尋找第壹個出現在strCharSet中的字符,返回其位置索引值。換句話說,返回從字符串s的起始位置的完全由不屬於strCharSet中的字符構成的子串的最大長度。strcspn為string?complement?span的縮寫。不支持多字節字符集。
char?*strpbrk(const?char?*s,?const?char?*strCharSet);//在字符串s中查找strCharSet中任意字符第壹次出現的位置的指針值。strpbrk為string?pointer?break縮寫。不支持多字節字符集。
char?*strstr(const?char?*haystack,?const?char?*needle);//在字符串haystack中查找字符串needle第壹次出現的位置,heystack的長度必須長於needle
char?*strtok(char?*strToken,?const?char?*strDelimit?);//將壹個字符串strToken依據分界符(delimiter)分隔成壹系列字符串。此函數非線程安全,且不可重入;但MSVC實現時使用了thread-local?static?variable因而是線程安全的單仍然是不可重入,即在單線程中不能對兩個源字符串交替調用該函數來分析token,應當對壹個字符串分析完成後再處理別的字符串。
size_t?strxfrm(char?*dest,?const?char?*src,?size_t?n);//根據當前locale轉換壹個字符串為strcmp使用的內部格式