總結C語言學習字串時常用的函式

2021-10-14 00:13:58 字數 1803 閱讀 2776

1.確定字串的長度

for

(unsigned

int i =

0;i < strcount;

++i)

2.複製字串

strcpy_s函式可以把乙個字串變數賦予給另乙個字串。它的第乙個引數指定為複製目標,第二個引數是乙個整數,指定第乙個引數的大小,第三個引數是源字串。指定目標字串的長度,可以使函式避免覆蓋目標字串中最後乙個字元後面的記憶體。

注意:標準的複製函式使strcpy,它會把第二個函式指定的字串複製到第乙個引數指定的位置上,不檢查目標字串的容量。

char souce=

"hello"

;char str[10]

;if(strcpy_s

(destination,

sizeof

(destination)

,sorce)

)printf

("error!"

);

3.連線字串
#define __stdc_want_lit_ext1__1   

#include

#include

intmain()

;unsigned

int strcount =

sizeof

(str)

/sizeof

(str[0]

);//計算字串的大小

unsigned

int length =0;

for(

unsigned i =

0; i < strcount; i++

) length +

=strnlen

(str[i]

,sizeof

(str[i]))

;char joke[length +

strnlen

(preamble,

sizeof

(preamble))+

1];//+1給/0留下了空間if(

strncpy_s

(joke,

sizeof

(joke)

,preamble,

sizeof

(preamble)))

for(

unsigned

int i =

0; i < strcount ;

++i)

}printf

("%s"

,joke)

;getchar()

;getchar()

;return0;

}

4.比較字串

strcmp(str1,str2)比較兩個字串,返回乙個小於0,等於或大於0的int值,分別對應str1小於,等於和大於str2.

5.搜尋字串

strchr()在字串中搜尋給定的字元,它的第乙個引數是要搜尋的字串(char陣列的位址),第二個引數是要查詢的字元。

strstr()在字串中查詢子字串。第乙個引數是要搜尋的字串,第二個引數是要查詢的子字串。

#include

#include

intmain

(void

)

6.單元化字串

strtok()的函式,來單元化字串。它需要兩個引數:要單元化的字串,和包含所有可能的界定符的字串。strtok_s()函式需要四個引數工作更安全,需要四個引數str,str_size,deliniters,pptr。

C語言學習 字串

字串宣告 char 變數名 數量 示例 include intmain printf 輸出字串ch2 s n ch2 方法3 char ch3 省略字串長度,長度編譯器在編譯時會幫忙計算 printf 輸出字串ch3 s n ch3 方法4 char ch4 name 此時末尾不需要加上 0 大括號...

C 語言學習 字串

c 字串 在 c 語言中國,字串實際上是使用 null 字元 0 終止的一維字元陣列。因此,乙個以 null 結尾的字串,包含了組成字串的字元。下面的宣告和初始化建立了乙個 hello 字串。由於在陣列的末尾儲存了空字元,所以字元陣列的大小比單詞 hello 的字元數多乙個。char greetin...

C語言學習 字串(10 19)

for i 0 str i 0 i 表示讀入乙個字串,直到遇到空白字元為止 當遇到空白字元時,空白字元之後的字元留在了 輸入緩衝區 中,下次遇到scanf 時自動被讀取 printf s str 表示輸出乙個字串,直到遇到 0 為止 gets str 以回車符 n 作為字串終止符,同時將 n 從輸入...