字串操作

2021-10-03 15:44:47 字數 1334 閱讀 1753

1.儲存字串變數

char str[20]="hello world";

這個變數可以儲存乙個至多包含19個字元的字串

char str="hello world" ;

這裡編譯器會指定乙個足以容納這個初始化字串常量的數值

2.確定字串長度

char str1=

"to be or not to be"

;int count =0;

while

(str1[count]

!='\0'

)++count:

2.複製字串

strcpy

它可以把第二個引數指定的字串複製到第乙個引數指定的位置上。

char str1=

"hdsio jsdj"

;char str2=

"sdjj"

;str1=

strcpy

(str1[

],str2)

;

輸出結果為str2的字串

3.連線字串

strcat

顧名思義,連線 就是指把乙個字串複製到另乙個字串的末尾

注意:1.目標字串的可用空間要足夠,不會覆蓋其他資料,甚或位址

2.連線得到的字串末尾有\0字元。

4.比較字串

strcmp

strcmp(str1,str2);

兩個字串比較大小,是比較他們的字元的ascii碼的大小,函式返回乙個小於、大於、或等於0的int 值,分別對應str1小於、大於、等於str2.

char str1=

"afcde"

;char str2=

"acdejoj";if

(strcmp

(str1,str2)

)printf

("%s"

,str1)

;

依次比較兩個字串中各字元對應ascii碼的大小,當str1中某字元碼值大於str2中的字元值時,我們就稱第乙個字串大於第二個字串

5. 使用指標處理字串

前面我們使用char 型別的陣列元素儲存字串,也可以使用char型別的指標變數引用字串。

char *s中的s是指標,而指標是指向一塊記憶體區域,它指向的記憶體區域的大小可以隨時改變,而且當指標指向常量字串時,它的內容是不可以被修改的,否則在執行時會報錯。

char s中的s是陣列首位址,而陣列首位址對應著一塊記憶體區域,其位址和容量在生命期裡不會改變,只有陣列的內容可以改變。

字串操作 靠字串分割字串

字串分解函式。注意strtok比較複雜。要妥善運用!也可以不用strtok函式,但要實現字串靠字串分割比較困難!注意str指向的空間必須是可讀可寫的 如陣列或動態分配的空間 不能為字串常量的指標,因為strtok改變了其中的內容。include include 功能 將str中的字串按照elemon...

字串操作

字串操作 要了解字串操作首先要了解什麼是字串。前面已經提過,字串是乙個由零個或者多個字元組成的有限序列,既然是有限的那麼也就意味著字串存在乙個起始位置和乙個結束位置。我們以指定起始位置的方式來通知程式從該位置起向後的一段記憶體空間的內容應該解釋為字串。那麼這個字串在什麼地方結束呢?規定當遇到字元 0...

字串操作

include using namespace std int strlength char str char strcopy char str1,char str2 char strlink char str1,char str2 int main char strcopy char str1,c...