C++ 系統(tǒng)String類詳解
一、C++ 系統(tǒng)String類
除了使用字符數(shù)組來處理字符串以外,c++引入了字符串類型??梢远x字符串變量。
1.定義及初始化
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
string str;
str = "china";
string str2 = " is great ";
string str3 = str2;
cout<<str<<str2<<endl<<str3<<endl;
return 0;
}

2.類型大小
cout<<"sizeof(string) = "<<sizeof(string)<<endl; cout<<"sizeof(str) = "<<sizeof(str)<<endl;

3.常用運(yùn)算
1.賦值
string str3 = str
2.加法
string combine = str + str2; cout<<combine<<endl;
3.關(guān)系
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
string s1 = "abcdeg";
string s2 = "12345";
if(s1>s2)
cout<<"s1>s2"<<endl;
else
cout<<"s1<s2"<<endl;
string s3 = s1+s2;
cout<<s3<<endl;
return 0;
}

4.常見的成員函數(shù)
1.下標(biāo)操作
char & operator[](int n) ;
2.求串大小
int size();
3.返回c串(c語言中的字符串也叫c串)
char *c_str();
4.查找
int find(char c, int pos = 0); int find(char * s, int pos = 0); //返回下標(biāo)值,沒有找到返回-1,默認(rèn)從 0 下標(biāo)開
5.刪除
string &erase(int idx=0,int n = npos); //作用是刪除從 idx 開始,往后數(shù) n 位的字符串
6.交換swap
void swap(stirng &s2);
5.string類型數(shù)組
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
string sArray[10] = {
"0",
"1",
"22",
"333",
"4444",
"55555",
"666666",
"7777777",
"88888888",
"999999999",
};
for(int i=0; i<10; i++)
{
cout<<sArray[i]<<endl;
}
return 0;
}
string 數(shù)組是高效的,如果用二維數(shù)組來存入字符串?dāng)?shù)組的話,則容易浪費(fèi)空間,此時(shí)列數(shù)是由最長的字符串決定。如果用二級(jí)指針申請(qǐng)堆空間,依據(jù)大小申請(qǐng)相應(yīng)的空間,雖然解決了內(nèi)存浪費(fèi)的問題,但是操作麻煩。用 string 數(shù)組存儲(chǔ),字符串?dāng)?shù)組的話,效率即高又靈活。
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
VC++實(shí)現(xiàn)文件與應(yīng)用程序關(guān)聯(lián)的方法(注冊(cè)表修改)
這篇文章主要介紹了VC++實(shí)現(xiàn)文件與應(yīng)用程序關(guān)聯(lián)的方法,涉及VC++針對(duì)注冊(cè)表的相關(guān)操作技巧,需要的朋友可以參考下2016-08-08
基于C++實(shí)現(xiàn)柏林噪聲算法(Perlin?Noise)
Perlin噪聲(Perlin?noise,又稱為柏林噪聲)指由Ken?Perlin發(fā)明的自然噪聲生成算法,具有在函數(shù)上的連續(xù)性,并可在多次調(diào)用時(shí)給出一致的數(shù)值。本文將用C++實(shí)現(xiàn)柏林噪聲算法,感興趣的可以了解一下2023-03-03
C++求1到n中1出現(xiàn)的次數(shù)以及數(shù)的二進(jìn)制表示中1的個(gè)數(shù)
這篇文章主要介紹了C++求1到n中1出現(xiàn)的次數(shù)以及數(shù)的二進(jìn)制表示中1的個(gè)數(shù),兩道基礎(chǔ)的算法題目,文中也給出了解題思路,需要的朋友可以參考下2016-02-02
C/C++字符串與數(shù)字互轉(zhuǎn)的實(shí)現(xiàn)
這篇文章主要介紹了C/C++字符串與數(shù)字互轉(zhuǎn)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01

