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類,是因為他和前者比較起來,不必 擔心記憶體是否足夠 字串長度等等,而且作為乙個類出現,他整合的...