色综合老司机第九色激情 _中文字幕日韩av资源站_国产+人+亚洲_久久久精品影院_久久久视频免费观看_欧美激情亚洲自拍_亚洲成av人片在线观看香蕉_热草久综合在线_欧美极品第一页_2020国产精品自拍

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  應聘面試  >  物聯網面試題  > STL教程(三):C++ STL常用容器之string

STL教程(三):C++ STL常用容器之string

來源:千鋒教育
發布人:syq
時間: 2022-07-11 17:00:00 1657530000

  一、string本質

  string是一個類,類似于java中的string類。利用string類可以定義其對應的string對象。

  二、string產生原因

  C風格字符串(以空字符結尾的字符數組)太過復雜難于掌握,不適合大程序的開發,所以C++標準庫定義了一種string類,定義在頭文件。

  注意:

  ·要使用string類要引入庫

  ·string首字母s就是小寫,不要大寫,和java不一樣

  ·string封裝了很多實用的成員方法

  ·string封裝了char,管理這個字符串,是一個char型的容器。

  ·不用考慮內存釋放和越界

  三、string容器的常用操作

  1、string構造函數

string();//創建一個空的字符串 例如: string str; string(const string& str);//使用一個string對象初始化另一個string對象 string(const char* s);//使用字符串s初始化 string(int n, char c);//使用n個字符c初始化

  2、string基本賦值操作

string& operator=(const char* s);//char*類型字符串 賦值給當前的字符串

string& operator=(const string &s);//把字符串s賦給當前的字符串

string& operator=(char c);//字符賦值給當前的字符串

string& assign(const char *s);//把字符串s賦給當前的字符串

string& assign(const char *s, int n);//把字符串s的前n個字符賦給當前的字符串

string& assign(const string &s);//把字符串s賦給當前字符串

string& assign(int n, char c);//用n個字符c賦給當前字符串

string& assign(const string &s, int start, int n);//將s從start開始n個字符賦值給字符 串

案例:

#include <iostream> #include <string> using namespace std; void test01() { 

//string(const char* s);//使用字符串s初始化

string str1("hello world"); 

cout<<str1<<endl; 

 

//string(int n, char c);//使用n個字符c初始化

string str2(5,'a'); 

cout<<str2<<endl; 

 

//string& operator=(const char* s);//char*類型字符串 賦值給當前的字符串

string str3; 

str3 = "hello world"; 

 

string str4; 

str4 = str3; 

string str5; 

str5 ='H'; 

cout<<str3<<endl; 

cout<<str4<<endl; 

cout<<str5<<endl; 

 

string str6="hello wrold"; 

string str7; 

str7.assign(str6, 2, 3); 

cout<<str7<<endl; 

string str8; 

str8.assign("world", 4);

cout<<str8<<endl; }int main(){ 

test01() ;

return EXIT_SUCCESS; }

4

  3、string存取字符操作

char& operator[](int n);//通過[]方式取字符 char& at(int n);//通過at方法獲取字符

案例:

#include <iostream> #include <string> using namespace std; void test02() 

 { 

 string str1="hello world"; 

 cout<<str1[1]<<endl; 

 cout<<str1.at(1)<<endl; 

 

 str1[4]='H'; 

 str1.at(1)='E'; 

 cout<<str1<<endl; 

 

 //[] 訪問元素越界 不會拋出異常

 //at 訪問元素越界 會拋出異常

 try 

 { 

 //str1[1000]='H';

 str1.at(1000)='H'; 

 }

 catch(exception &e) 

 { 

cout<<e.what()<<endl; 

 } 

 cout<<"結束了"<<endl; 

 }int main(){ 

test02() ;

return EXIT_SUCCESS; }

5

  4、string拼接操作

string& operator+=(const string& str);//重載+=操作符

string& operator+=(const char* str);//重載+=操作符

string& operator+=(const char c);//重載+=操作符

string& append(const char *s);//把字符串s連接到當前字符串結尾

string& append(const char *s, int n);//把字符串s的前n個字符連接到當前字符串結尾

string& append(const string &s);//同operator+=()

string& append(const string &s, int pos, int n);//把字符串s中從pos開始的n個字符連接到 當前字符串結尾

string& append(int n, char c);//在當前字符串結尾添加n個字符c

  5、string查找和替換

int find(const string& str, int pos = 0) const; //查找str第一次出現位置,從pos開始查找 int find(const char* s, int pos = 0) const; //查找s第一次出現位置,從pos開始查找 int find(const char* s, int pos, int n) const; //從pos位置查找s的前n個字符第一次位置 int find(const char c, int pos = 0) const; //查找字符c第一次出現位置 int rfind(const string& str, int pos = npos) const;//查找str最后一次位置,從pos開始查找int rfind(const char* s, int pos = npos) const;//查找s最后一次出現位置,從pos開始查找 int rfind(const char* s, int pos, int n) const;//從pos查找s的前n個字符最后一次位置 int rfind(const char c, int pos = 0) const; //查找字符c最后一次出現位置

string& replace(int pos, int n, const string& str); //替換從pos開始n個字符為字符串

str string& replace(int pos, int n, const char* s); //替換從pos開始的n個字符為字符串s

  6、string比較操作

/*

compare函數在>時返回 1,<時返回 -1,==時返回 0。

比較區分大小寫,比較時參考字典順序,排越前面的越小。

大寫的A比小寫的a小。

*/int compare(const string &s) const;//與字符串s比較 int compare(const char *s) const;//與字符串s比較

  7、string子串

string substr(int pos = 0, int n = npos) const;//返回由pos開始的n個字符組成的字符串

  8、string插入和刪除操作

string& insert(int pos, const char* s); //插入字符串

string& insert(int pos, const string& str); //插入字符串

string& insert(int pos, int n, char c);//在指定位置插入n個字符c

string& erase(int pos, int n = npos);//刪除從Pos開始的n個字符

  9、string和c-style字符串轉換

//string 轉 char*

string str = "itcast"; const char* cstr = str.c_str(); //char* 轉 string char* s = "itcast";

string str(s);

案例:

#include <iostream> #include <string> using namespace std; 

 void test03() 

 { 

 string str1="hello"; 

 str1.insert(2,"haha");

 cout<<str1<<endl; 

 

 string str2="hello"; 

 str2.insert(2,3,'a'); 

 cout<<str2<<endl; 

 

 str2.erase(2,3); 

 cout<<str2<<endl; 

 cout<<str2.size()<<endl; 

 

 string str; 

 char *p = "hello"; 

 

 //char * 轉 string (可以)

 str = p; 

 cout<<str<<endl; 

 

 string str5="hello"; 

 //string 轉 char * (不可以)

 //const char *p1 = str5;//err

 const char *p1 = str5.c_str(); 

 cout<<p1<<endl; 

 }int main(){ 

test03() ;

return EXIT_SUCCESS; }

6

 

  在c++中存在一個從const char到string的隱式類型轉換,卻不存在從一個string對象到C_string的自動類 型轉換。對于string類型的字符串,可以通過c_str()函數返回string對象對應的C_string. 通常,程序員在整個程序中應堅持使用string類對象,直到必須將內容轉化為char時才將其轉換為C_string.

  提示:為了修改string字符串的內容,下標操作符[]和at都會返回字符的引用。但當字符串的內存被重新分配之后,可能發生錯誤。

  更多關于物聯網培訓的問題,歡迎咨詢千鋒教育在線名師。千鋒教育擁有多年IT培訓服務經驗,采用全程面授高品質、高體驗培養模式,擁有國內一體化教學管理及學員服務,助力更多學員實現高薪夢想。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
色综合老司机第九色激情 _中文字幕日韩av资源站_国产+人+亚洲_久久久精品影院_久久久视频免费观看_欧美激情亚洲自拍_亚洲成av人片在线观看香蕉_热草久综合在线_欧美极品第一页_2020国产精品自拍
99久久伊人精品| 欧美三级一区二区| 美国三级日本三级久久99| 成人免费高清在线| 久久婷婷国产综合精品青草| 免费精品99久久国产综合精品| 一本色道久久综合亚洲91| 久久五月婷婷丁香社区| 极品尤物av久久免费看| 日韩欧美电影在线| 久久99精品久久久久久国产越南 | 国产精品18久久久| 欧美精品一区二区三区蜜桃| 欧美色网站导航| 一区二区三区在线观看动漫| 久色婷婷小香蕉久久| 7777精品伊人久久久大香线蕉经典版下载 | 欧美刺激午夜性久久久久久久| 成人精品小蝌蚪| 国产原创一区二区三区| 成人黄色大片在线观看| 久久成人精品无人区| 精品国产91久久久久久久妲己 | 亚洲美女在线一区| 椎名由奈av一区二区三区| 精品国产露脸精彩对白| 欧美日韩电影一区| 国产精品欧美精品| 亚洲女同女同女同女同女同69| 欧美日韩综合不卡| 亚洲一区二区三区在线看| 国产日韩亚洲欧美综合| 精品蜜桃在线看| 国产精品美女久久久久久久久久久 | 一区二区高清免费观看影视大全| 99久久99久久精品免费观看| 亚洲一区欧美一区| 国产麻豆91精品| 欧美色涩在线第一页| 色综合久久99| 欧美综合亚洲图片综合区| 99精品视频在线免费观看| 日本一区二区成人| 在线日韩av片| 日日夜夜精品视频免费| 日韩午夜电影av| 91看片淫黄大片一级在线观看| 日韩不卡免费视频| 亚洲免费观看高清完整版在线观看| 91精品国产色综合久久不卡电影| 国产在线精品一区二区三区不卡 | eeuss影院一区二区三区| 一区二区国产视频| 国产精品亲子伦对白| 精品国产麻豆免费人成网站| 欧美一区二区三区四区在线观看 | 日本韩国视频一区二区| 国产精品一二三四区| 日本不卡高清视频| 亚洲线精品一区二区三区| 亚洲人成网站色在线观看| 综合在线观看色| 国产精品久久久久一区二区三区共 | 成人精品鲁一区一区二区| 精品亚洲免费视频| 国产一区二区免费看| 国产超碰在线一区| 成人黄色小视频| 日本道免费精品一区二区三区| 欧美综合色免费| 日韩视频一区在线观看| 久久久久99精品一区| 中文字幕第一区| 亚洲国产成人av网| 国产一区二区三区视频在线播放| 精品中文字幕一区二区小辣椒| 国产成人免费视频网站| 91美女在线观看| 日韩精品在线看片z| 国产女人18水真多18精品一级做| 亚洲久草在线视频| 欧美aaaaaa午夜精品| 国产精品888| 欧美日韩成人在线| 国产午夜精品一区二区三区嫩草 | 国产成人av网站| 91在线无精精品入口| 91久久精品网| 久久久久成人黄色影片| 国产精品色哟哟| 一区二区三区国产| 国产农村妇女精品| 日韩成人dvd| 欧美综合亚洲图片综合区| 日韩视频免费观看高清完整版在线观看| 欧美精品一区二| 一区二区三区不卡视频在线观看| 精品中文字幕一区二区| 91香蕉视频污在线| 国产天堂亚洲国产碰碰| 亚洲国产一区在线观看| 91一区二区三区在线播放| 日韩一区二区精品在线观看| 亚洲成人一区二区| 成人激情视频网站| 2021中文字幕一区亚洲| 一区二区在线观看免费| av午夜一区麻豆| 久久综合色8888| 久久99国产精品成人| 国产91精品一区二区| 久久奇米777| 欧美在线三级电影| 中文字幕日本乱码精品影院| 国产成人精品免费看| 日韩免费观看高清完整版在线观看| 亚洲日本中文字幕区| 国产69精品久久久久毛片| 久久免费的精品国产v∧| 午夜精品在线看| 91精品国产91久久久久久一区二区| 中文字幕在线播放不卡一区| 国产91富婆露脸刺激对白| 亚洲私人影院在线观看| 国产精品18久久久久久久久久久久| 韩国三级中文字幕hd久久精品| 日韩一卡二卡三卡四卡| 日韩不卡一二三区| 久久精品欧美一区二区三区麻豆| 免费观看在线综合色| www亚洲一区| 成人午夜激情在线| 亚洲在线观看免费视频| 欧美视频你懂的| 久久精品免费看| 精品国产制服丝袜高跟| 久久成人羞羞网站| 欧美在线观看视频一区二区三区| 亚洲bt欧美bt精品| 久久不见久久见免费视频7| 日韩欧美国产一区二区三区| 成人国产一区二区三区精品| 亚洲女人的天堂| 91精品国产入口在线| 国产一区三区三区| 夜夜精品视频一区二区| 日韩三级在线观看| 91在线观看下载| 日本不卡免费在线视频| 国产精品久久久久影院老司| 欧美性xxxxxxxx| 春色校园综合激情亚洲| 精品精品国产高清a毛片牛牛| 欧美一卡二卡在线| 国产传媒一区在线| 免费美女久久99| 中文字幕欧美激情一区| 精品视频一区二区三区免费| 理论片日本一区| 日韩高清一区二区| 欧美日韩国产一二三| 国产91富婆露脸刺激对白| 亚洲国产中文字幕在线视频综合| 精品国产乱码久久久久久1区2区 | 欧美一卡二卡三卡四卡| 国产成a人亚洲精| 国产乱码精品一区二区三区五月婷| 亚洲色图一区二区| 国产精品毛片久久久久久久| 久久综合九色综合97婷婷| 欧美做爰猛烈大尺度电影无法无天| 盗摄精品av一区二区三区| 日韩电影在线免费看| 曰韩精品一区二区| 国产精品久久国产精麻豆99网站| 日韩欧美第一区| 欧美丰满高潮xxxx喷水动漫| 91国内精品野花午夜精品| av不卡免费电影| 欧美日韩一区在线| 一道本成人在线| 91在线视频播放地址| 久久99热国产| 国产一区二区三区观看| 国产成人精品免费视频网站| 狠狠色2019综合网| zzijzzij亚洲日本少妇熟睡| 国产成人精品影院| 色综合久久久久| 国产在线不卡视频| 成人爱爱电影网址| 色视频欧美一区二区三区| 在线视频一区二区三| 日韩视频一区二区三区在线播放 | 99久久精品国产精品久久| 欧美aaaaa成人免费观看视频| 久久99精品国产麻豆婷婷| 成人激情午夜影院| 欧美在线观看18| 国产欧美一区二区精品仙草咪|