C 中的一些字串處理函式小總結

2021-08-25 19:23:32 字數 1357 閱讀 3069

strcpy和strncpy複製字串:

strcpy將第二個引數(字串)複製到第乙個引數(字元陣列)中,注意,兩個引數都是字元陣列,而且第乙個陣列的長度要大於字串的長度。

strncpy除了指定從字串複製到字元陣列的字元個數外,其他和strcpy相似

例如:

char data1[11];

char data2 = "hello";

strcpy(data1,data2);

strncpy(data1,data2,5);

strtok進行字串的分割,記號化字串

函式原型:char *strtok(char *s,char *parameter )

引數s指向將要被分隔的字串,引數parameter為分隔字串,當strtok()在引數s的字串中發現到引數parameter的分隔字元時,則會將該字元改為』\0』字元,在第一次呼叫時,strtok()必需給予引數s字串,往後的呼叫則將引數s設定成null.每次呼叫成功則返回被分隔片段的指標,目前暫且且不是很清楚其中的原理

include include using namespace std;   

int main()   

{   

char sentence="this is a sentence with 7 tokens";  

cout<<"the string to be tokenized is:\n"

《由於在分割時加入了』\0』的終止字元,所以在列印sentence時只會出現

this

列印結果:

thisisa

sentence

with

7tokens

after strtok, sentence = this

strcat和strncat連線字串

srtcat中將第二個字串連線到第乙個字元陣列的尾部,所以,一定要確保第乙個字元陣列的長度足夠大,可以容納第二個字串長度。第二個引數所代表的字串的第乙個字元會將第乙個字元陣列末尾的終止字元替換掉,所以要保證第乙個陣列的長度可以容納第二個字元長度和乙個終止字元。

strncat將制定個數的字元連線到第乙個中。

strcmp和strncmp比較字串,其比較是根據ascll碼來比較大小,例如:

int strmcp(char * data1,char * data2);如果data1為hello,data2為hella,那麼data1大於data2。

在比較中,相等返回0,第乙個大,返回1,第二個大,返回-1.

strlen確定字串的長度

strlen以乙個字串作為引數,返回該字串中的字元數,不包含終止字元

C 一些字串處理函式

1.複製函式 我更願意稱之為 字串覆蓋函式 a.strcpy str1,str2 將字串str2 覆蓋到str1上 b.strncpy str1,str2,n 2.拼接函式 a.strcat str1,str2 將str2接到str1後面 b.strncat str1,str2,n 3.比較函式 a...

matlab處理字串的一些函式

字串和它的ascii表示之間轉換外,matlab還提供了大量的其它的有用的字串轉換 函式。它們包括 表6.1 字 符 串 轉 換 abs字串到ascii轉換 dec2hex 十進位制數到十六進製制字串轉換 fprintf 把 格式化的文字寫到 檔案中或顯示屏上 hex2dec 十六進製制字串轉換成十...

一些字串處理函式的實現!

最近剛學完陣列,把一些學了的字串處理函式進行自己理解,寫出了他們的一些轉化程式。有出錯的地方請大家指出,相互學習!size t strcat char str1,const char str2 將引數 str2追加到 str1後尾 include include strcat字串追加的實現 int ...