日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

STL---string

發布時間:2025/7/14 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STL---string 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include<iostream> #include<string> using namespace std;int main() {//string構造函數string str1;cout << str1.c_str() << endl; //c_str 返回一個const char *的頭指針string str2(5, 'a'); //第一個參數是一個size_t 的類型,第二個參數是一個字符類型cout << str2.c_str() << endl; string str3("luojianyi"); //第二種構造函數cout << str3.c_str() << endl;string str4("abcdefg", 3); //第一個參數是const char *的類型,然后第二個是取得第一個參數的前幾個cout << str4.c_str() << endl;string str5(str3, 1, 5); //第一個參數是一個string類型,第二和第三個參數是一個范圍cout << str5.c_str() << endl;string str6(str3); //拷貝構造函數cout << str6.c_str() << endl;//string 的重載運算符string str7;cin >> str7;cout << str7 << endl;cout << str7[3] << endl;cout << str7.at(3) << endl;return 0; } View Code #include<iostream> #include<string> using namespace std;int main() {string str1(5, 'w');//指定下標的修改str1[1] = 'a';str1.at(2) = 'b';cout << str1.c_str() << endl;//中間插入//way 1string str2("abcdefg");string str3("lllll");str2.insert(2,str3); //在str2下標為2的地方插入str3cout << str2.c_str() << endl;//way 2string str4("abcdef");string str5("abcdefg");str4.insert(3, str5, 0, 2); //將str5的0 1 下標插入到str4的下標的3位置cout << str4.c_str() << endl;//way 3string str6("abcdef");str6.insert(3, 5, 'v'); //在str6下標為3的地方插入5個‘v’cout << str6.c_str() << endl;//尾巴插入//way 1 重載+=運算符string str7("aaaaa");string str8("bbbbb");str7 += str8;cout << str7.c_str() << endl;str7 += "ccccc";cout << str7.c_str() << endl;//appendstring str9("aaaaa");str9.append("bbbbb");cout << str9.c_str() << endl;//append 還有其他添加方式,需要的時候可以去查詢//重新賦值// 重新 =// cin>>// 使用assign方法//eraser方法string str10("abcdefg");str10.erase(2, 3); //從下標為2的地方擦除3個元素cout << str10.c_str() << endl;return 0; } View Code #include<iostream> #include<string> using namespace std;int main() {string str1("abc");string str2("abcd");//比較函數 重載運算符 cout << (str1 > str2) << endl; //這里使用運算符進行比較的時候需要加上括號//compare 函數cout << str1.compare(str2) << endl;//比較函數的定義//從兩個字符串第一個開始按照ascii碼進行比較//abc 和 abcd 前三個字符都是相等的,的那個比較第四個字符的時候,前面的字符串已經沒有了,所以后面一個字符串大//abc 和 av 當比較到第二個字符的時候,v 大于 b 所以后面一個字符串大return 0; } View Code #include<iostream> #include<string> using namespace std;int main() {//查找string str1("abcdef");string str2("bc");cout << str1.find(str2, 0) << endl; //從str1的下標0開始尋找str2 cout << str1.find(str2, 2) << endl; //從str1的下標2開始尋找str2cout << (int)str1.find(str2, 2) << endl; //將上面一條語句返回的結果強轉為int//返回子串string str3("abcdefg");cout << str3.substr(2, 3) << endl; //從下標為2開始返回三個字符子串//交換string str4("abc");string str5("abcde");str5.swap(str4);cout << str4 << endl;cout << str5 << endl;return 0; } View Code #include<iostream> #include<string> using namespace std;int main() {//使用迭代器遍歷string結構string str1("123456789");string::iterator ite;//way 1ite = str1.begin();for (rsize_t i = 0; i < str1.size(); i++){cout << *ite << " ";ite++;}cout << endl;//way 2ite = str1.begin();for (rsize_t i = 0; i < str1.size(); i++){cout << ite[i] << " ";}cout << endl;//way 3for (ite = str1.begin(); ite != str1.end(); ite++){cout << *ite << " ";}cout << endl;//補充 我們可以通過迭代器訪問元素,也可以使用迭代器修改元素string str2("aaaaaaaaaaa");string::iterator ite1;ite1 = str2.begin();ite1[3] = 'b';cout << str2 << endl;//跌倒器失效,但我們給一個迭代器綁定了一個容器,當容器擴容的時候其實就是相當于重新申請了內存空間,這個時候我們原來綁定的迭代器就會失效,需要重新綁定return 0; } View Code #include<iostream> #include<string> using namespace std;int main() {string str1("abc");string str2("def");str1.append(str2.begin(), str2.begin() + 3);cout << str1 << endl;string str3("abc");string str4("def");str3.append(str4.begin(), str4.end());cout << str3 << endl;return 0; } View Code #include<iostream> #include<string> #include<algorithm> #include<functional> using namespace std;void fun(char ch) {cout << ch << " "; } int main() {string str1("37428797934748");for_each(str1.begin(), str1.end(), fun);//前兩個參數是范圍,第三個參數是一個操作函數//使用了一個算法 所以要包含 algorithm 頭文件cout << endl;//排序sort(str1.begin(), str1.end()); //默認從小到大排序 for_each(str1.begin(), str1.end(), fun);cout << endl;sort(str1.begin(), str1.end(), greater<char>());//第三個參數是仿函數 需要添加一個頭文件 functional for_each(str1.begin(), str1.end(), fun);cout << endl;return 0; } View Code

?

轉載于:https://www.cnblogs.com/luojianyi/p/9614879.html

總結

以上是生活随笔為你收集整理的STL---string的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美极品视频在线观看 | 免费福利av| 国产精品青青草 | 免费日本黄色片 | 依依成人在线视频 | 日韩av影视大全 | 久操网站| 精品少妇3p | 国产欧美一区二区精品性色 | 天堂av一区二区三区 | 中文字幕女同女同女同 | 久久久久久无码精品大片 | 好男人在线视频www 亚洲福利国产 | 国产精品一区二区毛片 | 麻豆va | 中文成人无字幕乱码精品区 | 99久久99久久久精品棕色圆 | 日韩欧美中文字幕精品 | 日本午夜精品理论片a级app发布 | 国产美女作爱全过程免费视频 | 不卡视频在线 | 阿v天堂2017| 无码少妇一级AV片在线观看 | 国产成人精品免费视频 | 国产三级精品三级在线观看 | 一级免费在线 | 国产宾馆实践打屁股91 | 永久精品 | 青青草一区 | 美女色网站 | 国产精品无码永久免费不卡 | 69国产精品视频免费观看 | 欧美午夜精品一区二区三区 | 爱看av | 欧美 日韩 国产 精品 | 筱田优全部av免费观看 | 欧美日韩中文国产一区发布 | 欧美精品乱码视频一二专区 | 直接看的av | 91av在线视频播放 | 一级久久久久久 | 日本三级吃奶头添泬无码苍井空 | 欧美成人生活片 | 台湾一级视频 | 在线观看av一区二区 | 亚洲三区在线 | xxxxwwww在线观看| 91精品一区 | 青在线视频 | 99热黄色| 一级黄色淫片 | 亚洲成人av在线 | 麻豆www | 国产又黄又猛又爽 | 一区二区三区黄色片 | 精品视频一区二区三区在线观看 | 天堂а√在线最新版中文在线 | 免费观看黄色一级视频 | 二十四小时在线更新观看 | 欧美野外猛男的大粗鳮 | 亚洲一区国产精品 | 999黄色片 | 国产熟女高潮一区二区三区 | 免费看片视频 | 暖暖成人免费视频 | 色一区二区三区四区 | 一区二区三区福利视频 | 日韩欧美在线视频 | 人妻人人澡人人添人人爽 | 国产日韩久久久 | 91超级碰| 成人看的毛片 | 成人免费短视频 | 四虎少妇做爰免费视频网站四 | 在线成人免费 | 日韩免费黄色 | 久久久久久久久久网 | 久久久久亚洲 | 久久黄色小说 | 亚洲精品午夜国产va久久成人 | 国产男女无套免费网站 | zzji欧美大片 | 极品另类 | 亚欧精品在线观看 | 免费99精品国产自在在线 | 黄色av电影在线观看 | 国产一区二区三区久久 | 精品视频在线看 | 男人的天堂毛片 | 国产剧情一区在线 | 国产一级片黄色 | 日本黄网站在线观看 | 一区二区三区小说 | 中文字幕人成人乱码亚洲电影 | 欧美成人做爰猛烈床戏 | 青青久久国产 | 福利视频h| 99爱视频在线观看 | 欧美一区二区三区视频在线观看 |