C 高階 3 容器(string)

2022-10-10 20:54:09 字數 2859 閱讀 6589

c++高階-3-容器

1 #include2

using

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可以對於插入集合中的元素直接排序,排成字典序,對於集合的操作,可以...