中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

ic外貿(mào)網(wǎng)站建設(shè)網(wǎng)絡(luò)媒體有哪些

ic外貿(mào)網(wǎng)站建設(shè),網(wǎng)絡(luò)媒體有哪些,網(wǎng)站建設(shè)及優(yōu)化 贛icp,網(wǎng)絡(luò)銷售 市場(chǎng)推廣文章目錄1.為什么要學(xué)習(xí)string類2.標(biāo)準(zhǔn)庫(kù)中的string類1.string分類2.string類對(duì)象的常見(jiàn)構(gòu)造1.string3. string類對(duì)象的容量操作1.size2.capacity3.reserve4.resize擴(kuò)容初始化刪除數(shù)據(jù)4. string類對(duì)象的修改操作1.push_back2.append3.operator1.為什么要學(xué)習(xí)string類 c語(yǔ)言的字…

文章目錄

  • 1.為什么要學(xué)習(xí)string類
  • 2.標(biāo)準(zhǔn)庫(kù)中的string類
    • 1.string分類
    • 2.string類對(duì)象的常見(jiàn)構(gòu)造
      • 1.string
    • 3. string類對(duì)象的容量操作
      • 1.size
      • 2.capacity
      • 3.reserve
      • 4.resize
        • 擴(kuò)容+初始化
        • 刪除數(shù)據(jù)
    • 4. string類對(duì)象的修改操作
      • 1.push_back
      • 2.append
      • 3.operator+=

1.為什么要學(xué)習(xí)string類

  • c語(yǔ)言的字符串是以’\0’結(jié)尾的一些字符的集合,比如存儲(chǔ)你的家庭住址,修改成為新的住址,原來(lái)的住址短,現(xiàn)在的住址長(zhǎng),之前的字符串?dāng)?shù)組存不下,不能很好按需修改
  • c++提供一個(gè)類來(lái)管理字符串,這個(gè)類就叫string

2.標(biāo)準(zhǔn)庫(kù)中的string類

1.string分類

  • string 是一個(gè)類模板,原型是一個(gè) basic_string的類模板由typedef成為string

  • char(重點(diǎn)使用)

  • char:1個(gè)字節(jié) ,即一個(gè)字符1個(gè)字節(jié)

  • 寬字符存在(使用相對(duì)偏少)
  • wchar_t :2個(gè)字節(jié) ,即一個(gè)字符2個(gè)字節(jié)

  • C++11提供u16string和u32string(了解)

  • char16_t:2個(gè)字節(jié) 即一個(gè)字符2個(gè)字節(jié)


  • char32_t: 4個(gè)字節(jié) 即一個(gè)字符4個(gè)字節(jié)

  • 上述多種string形式說(shuō)明有管理不同字符數(shù)組的需求
  • ASCII是美國(guó)標(biāo)準(zhǔn)信息交換代碼,用來(lái)在計(jì)算機(jī)里面存儲(chǔ)和顯示英文信息,通過(guò)26個(gè)字母、數(shù)字、標(biāo)點(diǎn)符號(hào),來(lái)建立關(guān)系形成映射表從而生成了編碼表,調(diào)用對(duì)應(yīng)的ASCII值來(lái)生成對(duì)應(yīng)的符號(hào),ASCII表只有128個(gè)字符,一個(gè)字節(jié)8個(gè)bit位就夠了
  • 為了支持顯示除了英文以外的文字顯示,就發(fā)明出了unicode (萬(wàn)國(guó)碼),為每種語(yǔ)言的每個(gè)字符設(shè)定了統(tǒng)一并且唯一的二進(jìn)制編碼

在這里插入圖片描述

  • 使用2個(gè)字節(jié)進(jìn)行統(tǒng)一編碼
    在這里插入圖片描述
  • 使用4個(gè)字節(jié)進(jìn)行統(tǒng)一編碼
  • UTF-16對(duì)應(yīng)u16string ,UTF-32對(duì)應(yīng) u32string

2.string類對(duì)象的常見(jiàn)構(gòu)造

  • 必須包含頭文件< string >

1.string

  • string()——構(gòu)造空的string類對(duì)象,即空字符串
  • string(const char*s) ——用常量字符串構(gòu)造string字符串
#include<iostream>
#include<string>
using namespace std;
int main()
{string s1;string s2("hello");//遍歷數(shù)組并使每個(gè)字符+1for (size_t i = 0; i < s2.size();i++){s2[i]++;}cout << s2 << endl;// 通過(guò)重載流提取(<<),string可以直接進(jìn)行打印//ifmmpreturn 0;
}
  • string(const string&str,size_t pos,size_t len=npos);—— 拷貝str從pos開(kāi)始的len個(gè)字符
    如果len長(zhǎng)度大于pos位置后的字符個(gè)數(shù),則有多少取多少
    若len沒(méi)有給值,則會(huì)自動(dòng)默認(rèn)缺省值npos
    size_t npos=-1,由于是無(wú)符號(hào)整形,實(shí)際上是-1的補(bǔ)碼即整形最大值
#include<iostream>
#include<string>
using namespace std;
int main()
{string s1("hello world");string s2(s1, 6, 5);//拷貝s1從第6個(gè)位置開(kāi)始取5個(gè)字符string s3(s1, 6, 15);//由于pos為指向后取只有5個(gè)字符,小于15,有多少取多少string s4(s1, 6);//len缺省值為整形最大值,則一直從pos位置取到結(jié)尾
cout<<s2<<endl;
cout<<s3<<endl;
cout<<s4<<endl;
}
  • string(size_t n,char c); ——填string類對(duì)象前n個(gè)字符
int main()
{string s(10, '.');// 前10個(gè)字符為 .cout << s << endl;//..........return 0;
}

3. string類對(duì)象的容量操作

1.size

#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello world");cout << s.size() << endl;//11cout << s.length() << endl;//11return 0;
}
  • size和length兩者功能相同,由于string發(fā)展歷史造成的,最開(kāi)始字符串的長(zhǎng)度為length,后來(lái)為了和數(shù)據(jù)結(jié)構(gòu)其他保持一致使用size更符合,所以推薦使用size

2.capacity

#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello world");cout << s.size() << endl;//11cout << s.capacity() << endl;//15return 0;
}
  • 有11個(gè)字符,但是空間大小為15(不包含/0)

3.reserve

#include<iostream>
#include<string>
using namespace std;
//擴(kuò)容問(wèn)題
int main()
{string s;//s.reserve(100);//提前開(kāi)辟100個(gè)空間size_t sz = s.capacity();//sz代表原來(lái)的容量cout << "making a grow" << endl;for (int i = 0; i < 100; i++){s.push_back('c');//不斷在字符串后插入字符cif (sz != s.capacity())//擴(kuò)容后,將sz值更新{sz = s.capacity();cout << "capacity changed:" << sz << endl;}}
}

在這里插入圖片描述

  • 提前開(kāi)辟空間,減少擴(kuò)容,提高效率

#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello");s.reserve(100);cout << s.size() << endl;//5cout << s.capacity() << endl;//111return 0;
}
  • reserve只會(huì)改變capacity,不會(huì)改變size
  • size值沒(méi)有改變依舊為5,capacity被提前開(kāi)辟100個(gè)空間

4.resize

擴(kuò)容+初始化

#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello");s.resize(100);cout << s.size() << endl;//100cout << s.capacity() << endl;//111return 0;
}
  • reserve既改變capacity,也會(huì)改變size
  • size值被改變?yōu)?00,被修改的部分填的是缺省值’\0’,
    capacity值也被改變?yōu)?11

#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello");s.resize(10,'x');//將size修改的值填成xreturn 0;
}
  • 可以手動(dòng)添加字符填成自己想給的值

刪除數(shù)據(jù)

#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello");s.resize(2);//2<5,所以只保留前2個(gè)字符 cout << s << endl;//hecout << s.capacity() << endl;//15return 0;
}
  • 若resize值小于size值,可以刪除數(shù)據(jù),但不會(huì)改變?nèi)萘?/font>

4. string類對(duì)象的修改操作

1.push_back

  • 在字符串后插入字符
#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello");s.push_back(' ');s.push_back('!');cout << s << endl;//hello !return 0;
}

2.append

  • 字符串后插入字符串
#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello");s.append(" world!");cout << s << endl;//hello world!return 0;
}

3.operator+=

  • 字符串后插入字符/字符串/對(duì)象
#include<iostream>
#include<string>
using namespace std;
int main()
{string s("hello");s += ' ';//字符s+='!';s += "world";//字符串string s2("abc");s += s2;//對(duì)象cout << s << endl;//hello !worldabcreturn 0;
}

相比于push_back 插入字符和append插入字符串,operator+=方式更容易使用

http://m.risenshineclean.com/news/61333.html

相關(guān)文章:

  • 2018年網(wǎng)站建設(shè)培訓(xùn)會(huì)發(fā)言營(yíng)銷互聯(lián)網(wǎng)推廣公司
  • 網(wǎng)站的關(guān)于頁(yè)面寧波seo關(guān)鍵詞
  • 免費(fèi)試用網(wǎng)站空間成都十大營(yíng)銷策劃公司
  • 最全的數(shù)據(jù)網(wǎng)站寧波seo費(fèi)用
  • 鄭州發(fā)布seo具體是什么
  • 網(wǎng)絡(luò)有限公司做女裝網(wǎng)站的百度一下百度搜索百度
  • 做h的游戲 迅雷下載網(wǎng)站線上推廣100種方式
  • 衡水網(wǎng)頁(yè)網(wǎng)站建設(shè)企業(yè)網(wǎng)絡(luò)營(yíng)銷策劃
  • 寧陵做網(wǎng)站雅虎搜索引擎中文版
  • 想學(xué)網(wǎng)站制作網(wǎng)絡(luò)軟件開(kāi)發(fā)
  • php網(wǎng)站開(kāi)發(fā)需要學(xué)什么怎么宣傳自己新開(kāi)的店鋪
  • 網(wǎng)站開(kāi)發(fā)績(jī)效考核站長(zhǎng)工具友鏈檢測(cè)
  • 泰安的網(wǎng)站建設(shè)公司哪家好正規(guī)推廣平臺(tái)
  • 購(gòu)物網(wǎng)站開(kāi)發(fā)的需求分析常見(jiàn)的網(wǎng)站推廣方式
  • 做網(wǎng)站建設(shè)公司crm在線的提升服務(wù)外貿(mào)網(wǎng)站推廣服務(wù)
  • 上海建設(shè)電動(dòng)車網(wǎng)絡(luò)營(yíng)銷鄭州優(yōu)化推廣公司
  • 課程網(wǎng)站建設(shè) 碧輝騰樂(lè)谷歌seo
  • 網(wǎng)絡(luò)營(yíng)銷策劃是什么意思seo排名優(yōu)化方法
  • 蘇州怎么制作網(wǎng)頁(yè)網(wǎng)站杭州網(wǎng)站seo價(jià)格
  • 廣東哪里網(wǎng)站建設(shè)安卓?jī)?yōu)化神器
  • seopc流量排名官網(wǎng)超級(jí)seo外鏈
  • 免費(fèi)個(gè)人crmapp網(wǎng)站優(yōu)化排名易下拉穩(wěn)定
  • 外貿(mào)狼成都seo的方法
  • 做線下活動(dòng)的網(wǎng)站武漢seo網(wǎng)絡(luò)優(yōu)化公司
  • 云南酒店網(wǎng)站建設(shè)名優(yōu)網(wǎng)站關(guān)鍵詞優(yōu)化
  • 小游戲網(wǎng)址鏈接seo網(wǎng)站推廣優(yōu)化論文
  • java做直播網(wǎng)站有哪些軟件有哪些微信加人推碼35一單
  • 商務(wù)網(wǎng)站建設(shè)管理思路青島seo經(jīng)理
  • 做的網(wǎng)站怎么發(fā)布到網(wǎng)上網(wǎng)絡(luò)推廣方案怎么寫
  • 模仿網(wǎng)站怎么防止侵權(quán)電商關(guān)鍵詞一般用哪些工具