C 語言字串處理函式

2021-09-25 02:52:33 字數 1657 閱讀 4282

c++語言提供了比c語言更豐富的字串處理功能。它可以在字串上經行輸入,輸出,合併,修改,比較,轉換,複製,搜尋等操作。使用這些現成的功能可以大大減少我們的程式設計的負擔。

輸入和輸出的字串函式,如printfputscoutscanfgets,cout等,在使用時應包含標頭檔案cstdio,並使用其他字串函式包含標頭檔案cstring

cstring是乙個專門用於處理字串的標頭檔案。它包含許多字串處理函式。由於篇幅限制,本節只能解釋一些常見的內容。

strcat 就是 string catenate 的縮寫,意思為把兩個字串拼在一起,其格式為:

strcat(str1, str2);
str1、str2 為需要拼接的字串。

strcat() 將把 str2 連線到 str1 後面,並刪除原來 str1 最後的結束標誌\0這意味著,str1 必須足夠長,要能夠同時容納 str1 和 str2,否則字元陣列會越界(超出字串範圍)。

strcat() 的返回值為 str1 的位址。

這是乙個簡單的演示:

#include #include int main()
執行結果:

input a url: 輸入)

the url is 

strcpy 是 string copy 的縮寫,意思是字串複製,也即將字串從乙個地方複製到另外乙個地方,語法格式為:

strcat(str1, str2);
strcpy() 會把 str2 中的字串拷貝到 str1 中,字串結束標誌\0也一同複製。下面是乙個簡單的演示:

#include #include int main()
執行結果:

str1: 

你看,將 str2 複製到 str1 後,str1 中原來的內容就被覆蓋了。

另外,strcpy() 要求 str1 要有足夠長的長度,否則不能全部裝入所複製的字串。

strcmp 是 string compare 的縮寫,表示字串比較。語法是:

strcmp(str1, str2);
str1 和 str2 是兩個需要比較的字串。

字元本身沒有大小,strcmp()比較字元的ascii值。

strcmp()開始比較兩個字串的第0個字元。如果它們相等,它們會繼續比較下乙個字元,直到它們遇到不同的字元或字串的末尾。

返回值:如果 str1 和 str2 相同,則返回0;如果 str1 大於 str2,則返回大於 0 的值;若 str1 小於 str2,則返回小於0 的值。

比較4組字串:

#include #include int main()
執行結果:

str1 vs str2: 32

str1 vs str3: -31

str1 vs str4: 0

ps:**雲黑部落格

C語言字串處理函式

使用有關字串處理的庫函式,務必包含標頭檔案string.h,即 include 1 比較字串大小函式 1 忽略大小寫 strcasecmp 函式原型 int strcasecmp const char s1,const char s2 函式說明 用來比較引數s1和s2字串,比較時會自動忽略大小寫的差...

c語言字串處理函式

很高效的字串處理函式 void memccpy void dest,const void src,int c,size t n 從src所指向的物件複製n個字元到dest所指向的物件中。如果複製過程中遇到了字元c則停止複製,返回指標指向dest中字元c的下乙個位置 否則返回null。void mem...

C語言字串處理函式

字串處理函式包含在標頭檔案裡。void memchr const void str,int c,size t n 在引數 str 所指向的字串的前 n 個位元組中搜尋第一次出現字元 c 乙個無符號字元 的位置。intmemcmp const void str1,const void str2,siz...