c++高階-3-容器
1 #include2using
namespace
std;34
//string容器56
的建構函式
7void
test01()
2223
的賦值操作,operator= 或者 assign
24void
test02()
5455
//3.字串拼接
56void
test03()
7576
//4.字串查詢和拼接
77void
test04()
86else
8790
91//
查詢 rfind
92//
區別:find從左往右查詢,rfind是從右往左查詢
93int rpos = str1.rfind('de'
);94 cout << "
找到字串,rpos =
"<< rpos <9596
97//
替換98
string str2 = "
abcdefg";
99 str2.replace(1, 3, "
11111");
100 cout << "
str2 =
"<< str2 <101102
}103
104//
5. 字串比較
105void
test05()
114else
if(str1.compare(str2) == 1
) 117
else
if (str1.compare(str2) == -1
) 120
}121
122//
6.字串訪問
123void
test06()
131 cout <132133
//2.通過at方式訪問單個字元
134for (int i = 0; i < str.size(); i++)
137 cout <138139
//修改單個字元
140 str[0] = 'x'
;141 cout << "
str =
"<< str <142143 str.at(1) = 'y'
;144 cout << "
str =
"<< str <145146
}147
148//
7.字串插入和刪除
149void
test07()
162163
//8.字串子串
164void
test08()
177178
179int
main()
210211
//總結
212//
213//
string 容器
214//
string是c++風格的字串,而string本質上是乙個類
215//
216//
string和char的區別:
217//
1.char*是乙個指標
218//
2.string是乙個類,類內部封裝了char*,管理這個字串,是乙個char*型的容器
219//
220//
特點:221
//string類內部封裝了很多成員方法,如:find、copy、delete、replace、insert等
222//
string管理char*所分配的記憶體,不需要擔心複製越界和取值越界等,由類內部進行負責
223//
224//
string建構函式
225//
建構函式原型:
226//
string();
//建立乙個空字串,如:string str;
227//
string(const char *);
//使用字串s初始化
228//
229//
string(const string& str);
//使用乙個string物件初始化另乙個物件
230//
231//
string(int n, char c);
//使用n個字元c初始化
232//
233//
string賦值操作
234//
235//
字串拼接
236//
237//
字串查詢和替換
238//
查詢:查詢指定字串是否存在
239//
替換:在指定的位置替換字串
240//
241//
字串比較
242//
主要是比較字串是否相等
243//
按照ascii碼進行比較:
244//
= 返回0
245//
> 返回1
246//
< 返回-1
247//
248//
字串訪問
249//
250//
字串插入和刪除
251//
252//
字串子串
253//
C 學習紀錄 string容器 查詢
1 int find const string str,int pos 0 const查詢str第一次出現位置,從pos開始查詢 2 int find const char s,int pos 0 const 查詢s第一次出現位置,從pos開始查詢 3 int find const char s,i...
容器篇 string容器(上)
include include using namespace std 建構函式 void test01 intmain include include using namespace std 賦值操作 void test01 void test02 intmain include include ...
c 中的string以及set容器
首先談談今天的string庫吧,當我們宣告乙個string時,string s,代表著乙個字串。當然也可以直接的宣告字元陣列,可以直接的操作,不必向陣列一樣挨個輸出。同時對於字元的操作求長度我們可以直接length,求長度。對於set可以對於插入集合中的元素直接排序,排成字典序,對於集合的操作,可以...