C語言字串處理有關函式

2021-10-03 09:22:05 字數 1591 閱讀 8787

最近一直在刷oj,發現自己對一些字串的處理顯得太過麻煩了,比如數字轉字串、字串拼接等等。雖然知道c語言有專門的函式可以直接進行呼叫,但我以前用的比較少所以並沒有記住函式名以及如何使用這些函式,在這次刷oj的過程中,終於有機會對其進行學習使用,下面是一些我在刷題過程中所遇到而使用的函式。使用這些函式,需要包含乙個標頭檔案:

#include

輸出字串一般都是需要利用迴圈將字串中的字元乙個乙個輸出,這就需要知道字串的長度

#include #include #include int main()

執行結果為:

請輸入字串:dfsdgsdg

字串長度為:8

其中 num 是要轉的整型資料, str 則是所要轉向的字串,後面的10代表所轉整型資料的進製型別是十進位制。

#include #include #include int main()

執行結果為:

請輸入字串:54623

轉化後數字為:54623

str1 與 str2 是要比較的兩個字串。字串大小的比較是以ascii 碼表上的順序來決定,此順序亦為字元的值。strcmp()首先將s1 第乙個字元值減去s2 第乙個字元值,若差值為0 則再繼續比較下個字元,若差值不為0 則將差值返回。若strcmp(str1,str2)>0,則 str1 比 str2 大,反之則小。

#include #include #include int main()

執行結果為:

請輸入字串:

sdg sdhg

sdhg更大

該函式是將 str2 的值拷貝給 str1 。在對字串陣列進行排序時,我們需要將兩個字串的位置進行交換,但是字串交換跟數字的交換有不一樣不能用等號直接進行賦值,只有通過strcpy這個函式來進行處理。

#include #include #include int main()

} }printf("排序後字串為:\n");

for(i=0;i<3;i++)

printf("%s\n",num[i]);

return 0;

}

執行結果為:

請輸入三個字串:adsf asg asg

排序後字串為:

asgasg

adsf

這個函式時將字串 str2 拼接在 str1 後面,不過前提是 str1 已經有值了,如果沒有就要先對 str1 進行賦值操作

#include #include #include int main()

執行結果為:

請輸入str:dfg

請輸入strs:hafdh

拼接後的str為:dfghafdh

C語言有關字串處理的函式

1 puts和gets puts將乙個字串輸出到螢幕上。gets從終端輸入乙個字串到字元陣列中。char a welcome to char p linux c program puts a puts p 2 strcpy和strncpy include char strcpy char dest,...

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...