c語言中常字串處理的函式

2022-09-23 11:12:11 字數 1549 閱讀 8766

為了更加的熟悉字串操作的函式,所以把相應的函式積累如下:

(1)sprintf()函式:把格式化的資料寫入某個字串

sprintf函式現在用的最多的就是用來各種型別轉換成字串的應用。

標頭檔案:stdio.h

函式原型:int sprintf( char *buffer, const char *format, [ argument] … ) ;

返回值:字串長度(strlen)

除了前兩個引數型別固定外,後面可以接任意多個引數。而它的精華,顯然就在第二個引數:

在格式化字串上,printf 和sprintf 都使用格式化字串來指定串的格式,在格式串內部使用一些以「%」開頭的格式說明符(format specifications)來佔據乙個位置,在後邊的變參列表中提供相應的變數,最終函式就會用相應位置的變數來替代那個說明符,產生乙個呼叫者想要的字串。

sprintf 最常見的應用之一莫過於把整數列印到字串中,所以,sprintf 在大多數場合可以替代itoa

//把整數123 列印成乙個字串儲存在s 中。

sprintf(s, "%d", 123); //產生"123"

可以指定寬度,不足的左邊補空格:

sprintf(s, "%8d%8d", 123, 4567); //產生:" 123 4567"

當然也可以左對齊:

sprintf(s, "%-8d%8d", 123, 4567); //產生:"123 4567"

也可以按照16 進製列印:

sprintf(s, "%8x", 4567); //小寫16 進製,寬度佔8 個位置,右對齊

sprintf(s, "%-8x", 4568); //大寫16 進製,寬度佔8 個位置,左對齊

這樣,乙個整數的16 進製字串就很容易得到,但我們在列印16 進製內容時,通常想要一種左邊補0 的等寬格式,那該怎麼做呢?很簡單,在表示寬度的數字前面加個0 就可以了。

(2)strlen()獲取字元陣列或者是字串的長度的函式

這個函式比較的簡單,主要的作用是獲取陣列或者是字串的長度。

(3)strncat()函式:拼接兩個字串的函式

原型:extern char *strncat(char *dest,char *src,int n);

用法:#include

功能:把src所指字串的前n個字元新增到dest結尾處(覆蓋dest結尾處的'\0')並新增'\0'。

說明:src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。

返回指向dest的指標。www.2cto.com

(4)strcat()函式:作用也是拼接兩個字串

函式原型:extern char *strcat(char *dest,char *src);

用法:#include

功能:把src所指字串新增到dest結尾處(覆蓋dest結尾處的'\0')並新增'\0'。

說明:src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。

返回指向dest的指標。

作者:liangxanhai

C語言中常用的字串處理函式

1.字串的逆序 strrev 函式,函式的原型如下 char rev strrev char str 2.strset 將字串中的所有字元都設定為指定字元 char strset char str,char c 3.strspn 查詢指定字符集的子集第一次出現int strspn char str1...

C語言中處理字串的函式

在c語言中有許多字串處理函式,在寫程式的時候常常想不起來或則不了解區別,今天就花點時間將這些函式做個總結,以便以後查詢使用。char buf 10 scanf s buf 輸入 tttt3 printf buf s n buf 結果 buf tttt3 char buf1 10 scanf s s ...

C語言中的字串處理函式

strcasecmp 1,函式原型 int strcasecmp const char str1,const char str2 2,功能 比較str1和str2是否相等,忽略大小寫的差異 3,標頭檔案 include 4,返回值 str1 str2 返回0 str1 str2 返回大於0的值 st...