字串操作在演算法與資料操作中佔到很重要的位置,本節將帶大家一起學習c++中字串的幾項基本操作:
字串(字元陣列)函式包含在string.h標頭檔案中,在使用以下函式時,應注意加入標頭檔案string.h。
strlen()函式可以得到字元陣列中第乙個\0前的字元的個數,其格式為:strlen(字元陣列);
strlen()函式的不是陣列的總長度,而是陣列中有元素的陣列長度。
strcmp函式返回兩個字串大小的比較結果,比較原則是按字典序,其格式如下:
strcmp(字元陣列1,字元陣列2)
所謂字典序就是字串在字典中的順序,因此如果有兩個字元陣列str1和sr2,且滿足st1[0…k-1]=str2[0…k-l]、str1[k]①如果字元陣列1《字元陣列2,則返回乙個負整數(不同編譯器處理不同,不一定是-1)。
②如果字元陣列1=字元陣列2,則返回0。
③)如果字元陣列1>字元陣列2,則返回乙個正整數(不同編譯器處理不同,不一定是+1)
以上**可以多次輸入進行比較,如需結束,請ctrl+c。
strcpy()函式可以把乙個字串複製給另乙個字串,其格式如下:
strcpy(字元陣列1,字元陣列2)
是把字元陣列2賦值給字元陣列1,這裡的「賦值」也包括結束符\0。
以上輸入str1和str2,str1用str2覆蓋因而輸出兩個都是dy。
strcat可以把乙個字串接到另乙個字串後面,其格式如下:
strcat(字串1,字串2)
是把str2接到str1後面
c++, 想要使用string ,必須要用命名空間 std,string 是標準庫,c++標準引入了命名空間namespace,標準庫的空間是std。
從固定字串中查詢符合條件的字元(或字串)的首字元位置,若查詢失敗,則返回-1。其格式如下:
str.find("將要查詢的字元或者字串");
查詢子串,返回固定位置的子串,其格式如下:
str.substr(字元陣列的位置)
#include#includeusing namespace std;
int main(){
string str;
cin>>str;
//返回str[4]及其之後的子串
交換兩個字串,其格式如下:
返回字串的大小,其格式如下:
在c語言和c++中很多的知識點是融會貫通的,string是c++中特有的知識點,c++中也可以使用char陣列來表示字串。
字串操作 靠字串分割字串
字串分解函式。注意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...