C語言字串函式

2021-10-03 03:32:57 字數 1819 閱讀 6702

c語言提供的字串處理函式,可以對字串進行輸入、輸出、合併、修改、比較、轉換、複製、搜尋等操作,使用這些現成的函式可以大大減輕我們的程式設計負擔。

用於輸入輸出的字串函式,例如printf、puts、scanf、gets等,使用時要包含標頭檔案stdio.h,而使用其它字串函式要包含標頭檔案string.h。

string.h是乙個專門用來處理字串的標頭檔案,它包含了很多字串處理函式。

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

strcat

(arrayname1, arrayname2)

;

arrayname1、arrayname2 為需要拼接的字串。

strcat() 將把 arrayname2 連線到 arrayname1 後面,並刪除原來 arrayname1 最後的結束標誌』\0』。這意味著,arrayname1 必須足夠長,要能夠同時容納 arrayname1 和 arrayname2,否則會越界。

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

下面是乙個簡單的演示:

#include 

#include

intmain()

執行結果:

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

strcpy

(arrayname1, arrayname2)

;

strcpy() 會把 arrayname2 中的字串拷貝到 arrayname1 中,字串結束標誌』\0』也一同拷貝。請看下面的例子:

#include 

#include

intmain()

執行結果:

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

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

strcmp 是 string compare 的縮寫,意思是字串比較,語法格式為:

strcmp

(arrayname1, arrayname2)

;

arrayname1 和 arrayname2 是需要比較的兩個字串。

字元本身沒有大小之分,strcmp() 以各個字元對應的 ascii 碼值進行比較。strcmp() 從兩個字串的第 0 個字元開始比較,如果它們相等,就繼續比較下乙個字元,直到遇見不同的字元,或者到字串的末尾。

返回值:若 arrayname1 和 arrayname2 相同,則返回0;若 arrayname1 大於 arrayname2,則返回大於 0 的值;若 arrayname1 小於 arrayname2,則返回小於0 的值。

對4組字串進行比較:

#include 

#include

intmain()

執行結果:

a vs b:

32a vs c:-31

a vs d:

0

如果感覺不錯的話請點贊喲!!!

c語言 字串函式

c語言中的字串函式 主要是兩大類,一類是拷貝的,一類是比較的,另乙個就是其他的 拷貝的有 1.strcpy 函式原型 char strcpy char strdestination,const char strsource 函式功能 將strsource的內容拷貝到strdestination中去,...

c語言字串函式

字串連線函式strcat 格式 strcat 字元陣列1,字元陣列2 功能 把字元陣列2連到字元陣列1後面 返值 返回字元陣列1的首位址 說明 字元陣列1必須足夠大 連線前,兩串均以 0 結束 連線後,串1的 0 取消,新串最後加 0 字串拷貝函式strcpy 格式 strcpy 字元陣列1,字串2...

C語言字串函式

1字串拷貝 strcpy str1,str2 str2 str1覆蓋 strncpy str1,str2,n 把str2的n個位元組賦給str1的前n個位元組,其他的不變 並不覆蓋 例子 str1 yaomingyue str2 kkkk strncpy str1,str2,3 結果 str1 kk...