1. 程式人生 > >string.h 標頭檔案中包含的一些庫函式

string.h 標頭檔案中包含的一些庫函式

char *strcpy(char* dest, const char *src);

把從src地址開始且含有NULL結束符的字串複製到以dest開始的地址空間.src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。返回指向dest的指標。

 

char * strncpy(char *dest, char *src,size_t num);

複製src中的內容(字元,數字、漢字....)到dest,複製多少由num的值決定,返回指向dest的指標。如果遇到null字元('\0'),且還沒有到num個字元時,就用(num - n)(n是遇到null字元前已經有的非null字元個數)個null字元附加到destination。

 

char *strcat(char *dest,char *src);

把src所指字串新增到dest結尾處(覆蓋dest結尾處的'\0')並新增'\0'。src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。返回指向dest的指標。

 

char *strncat(char *dest,char *src,int n);

把src所指字串的前n個字元新增到dest結尾處(覆蓋dest結尾處的'\0')並新增'\0'。src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。返回指向dest的指標。

 

int strcmp(const char *s1,const char * s2);

比較字串s1和s2。
當s1<s2時,返回值<0
當s1==s2時,返回值=0
當s1>s2時,返回值>0
即:兩個字串自左向右逐個字元相比(按ASCII值大小相比較),直到出現不同的字元或遇'\0'為止。

 

int strncmp(char *str1, char *str2, int maxlen);

此函式功能即比較字串str1和str2的前maxlen個字元。

如果前maxlen位元組完全相等,返回值就=0;

在前maxlen位元組比較過程中,如果出現str1[n]與str2[n]不等,則返回(str1[n]-str2[n])。

int strcasecmp
 (const char *s1, const char *s2);

strcasecmp()用來比較引數s1和s2字串,比較時會自動忽略大小寫的差異。

若引數s1和s2字串相等則返回0。

s1大於s2則返回大於0 的值。

s1 小於s2 則返回小於0的值。

int strncasecmp(const char *s1, const char *s2, size_t n)

strncasecmp()用來比較引數s1和s2字串前n個字元,比較時會自動忽略大小寫的差異,

若引數s1和s2字串相同則返回0 

s1若大於s2則返回大於0的值

s1若小於s2則返回小於0的值.

char *strchr(const char *s,char c);

查詢字串s中首次出現字元c的位置,返回首次出現c的位置的指標,如果s中不存在c則返回NULL。

 

unsigned int strlen(char *s);

計算字串s的(unsigned int型)長度,不包括'\0'在內.返回s的長度,不包括結束符NULL