C 中String用法的簡單總結

2021-09-01 04:04:51 字數 2292 閱讀 6981

1. 定義和初始化

string s1;

string s1(s2);

string s1(「abc」);

string s1(n, 』x』);//s1為x的n個副本

string s1(s2,pos,len);//s1被初始化成s2中從pos開始的len個字元的副本。

2. 讀寫

cin>>s;//忽略開頭空白字元,到遇到空白字元為止

cout<>s)>

getline(cin,line);//遇到換行符即停止返回

3. 大小和容量

s.empty();//返回bool值

s.size();//返回s裡字元的個數。

注意:返回的並不是int型,而是string::size_type型別的值

for(string::size_type i=0;i!=s.size();i++)

4. 關係判斷

if(s1==s2)

if(s1<=s2)//等效於區分大小寫的字典順序比較

5. 賦值,相加,連線

st1=st2;

st3=st1+st2;

st1 += st2;把st2追加到st1末尾

st3=st1 + 「girl」;

st4=」girl」 + st1;//錯誤的!

6. 獲取字元

cout< 注意:下標是從0開始的。

而要注意s[s.size() - 1]則表示s的最後乙個字元。

7. 修改

s1.insert(1,"mm");

s1.insert(1,str);

在s1[1]處插入字元。再來乙個:

s1.insert(s1.size() , 2,』m』);//在s1的末尾插入mm(直接+=不就行了~~~)

s1.assign(s2);//用s2替換s1

s1.assign(s2,pos,len);

//用s2從pos開始的len個字元替換s1

s1.erase(pos,len);//刪除s1從pos開始的len個字元

還有個替換的函式,在插入的同時刪除:

s1.replace(1,3,」abcdefg」);//將s1從1開始的3個字元替換為指定字元

8. 提取字串

s.substr(pos,n);//返回從pos開始的n個字元的string

s.substr(pos);//從pos到末尾

9.記憶體輸入輸出

sprintf(str, "%d" ,i);

sscanf(str, 」%d」 ,&i);

10. 查詢操作

s1.find("mm");//返回第乙個mm的位置

s1.rfind(「mm」);//返回最後乙個mm的位置

s1.find("5,mm");//從第5個字元開始找

找到返回下標值,找不到返回4294967295

11. 比較

string s(「abcd」);

s.compare(「abcd」); //返回0

s.compare(「dcba」); //返回乙個小於0的值

s.compare(「ab」); //返回大於0的值

s.compare(s); //相等

s.compare(0,2,s,2,2); //用」ab」和」cd」進行比較 小於零

s.compare(1,2,」bcx」,2); //用」bc」和」bc」比較。

12.字元處理

#include

isalnum(s[i]) 如果s[i]是字母或數字,則為true

islower(c)小寫字母

isupper(c)大寫字母

tolower(c)

toupper(c)轉換

isdigit(c)是數字

…… 加iomanip標頭檔案。

舉例: 輸出雙精度數。

double a=123.456789012345;對a賦初值

(1) cout<(2) cout<(3) cout<(4) cout<< setiosflags(ios∷fixed);輸出: 123.456789

(5) cout<(6) cout<(7) cout<下面是整數輸出的例子:

int b=123456;對b賦初值

(1) cout<(2) cout<(3) cout<(4) cout<(5) cout<(6) cout<11.string裡經常用到和c的字串陣列的轉換

int main()

12.s.length()與s.size()有何區別?

答:完全沒有區別,至少對string來說……

標準C 中string類的用法總結

相信使用過mfc程式設計的朋友對cstring這個類的印象應該非常深刻吧?的確,mfc中的cstring類使用起來真的非常的方便好用。但是如果離開了mfc框架,還有沒有這樣使用起來非常方便的類呢?答案是肯定的。也許有人會說,即使不用mfc框架,也可以想辦法使用mfc中的api,具體的操作方法在本文最...

c 中的string用法

向string 的後面加字元或字串。比 push back 更靈活 1 向string 的後面加c string basic type ptr string s hello s hello const char c out there s hello out there 2 向string 的後面加...

c 中string的用法

c 中string的用法 string在c 中是作什麼用的阿?既有string str宣告變數的,也有string n,的,我是新手,謝謝了。之所以拋棄char 的字串而選用c 標準程式庫中的string類,是因為他和前者比較起來,不必 擔心記憶體是否足夠 字串長度等等,而且作為乙個類出現,他整合的...