Stringクラスオブジェクト
Stringクラス
1.意味 1.1文字列の操作を容易にするために、C標準ライブラリはstrシリーズのライブラリ関数をいくつか提供しています. 1.2典型的な面接問題文字列転整形数字文字列加算 2.標準ライブラリのstringクラス
2.1 stringクラス stringは文字列を表す文字列クラス である.このクラスのインタフェースは、従来のコンテナのインタフェースとほぼ同じであり、stringを操作するための通常の操作を追加した. stringクラスは最下位で実際にはbasic_stringテンプレートクラスの別名、typdef basic_stringstring; マルチバイトまたは長くなる文字を操作できないシーケンス 2.2共通インタフェース
2.2.1一般的な構造 string()は、stringクラスオブジェクト、すなわち空の文字列 を構築する. string(const char*s)は、C-stringでstringクラスオブジェクトを作成します. string(size_t n,char c)、stringクラスオブジェクトにN個の文字列c が含まれる string(const string&s)、コピー構造関数 2.2.2 stringクラスオブジェクトの容量操作
関数名
機能
size
文字列の有効文字長を返します
length
文字列の有効文字長を返します
capacity
スペースの合計サイズを返す
empty
検出文字列は空の列に解放され、trueを返します.そうしないとfalseを返します.
clear
有効文字をクリア
reserve
文字列のスペースの予約
resize
有効文字の個数をn個に変更し、複数の空間を文字cで埋める
2.3定義と初期化
定義:C言語:char s[3]={‘a’,‘b’,‘c’};stringクラス:string str;初期化:str="11123";str=“adbhbhf”; string str=sを同時に初期化することを定義します.
2.4一般的な操作
2.4.1挿入
2.4.2削除
2.4.3置換
2.4.4検索
2.4.5比較
3.1文字列と数値変換3.1.1文字列->数値
3.1.2数値->文字列
1.意味
2.1 stringクラス
2.2.1一般的な構造
関数名
機能
size
文字列の有効文字長を返します
length
文字列の有効文字長を返します
capacity
スペースの合計サイズを返す
empty
検出文字列は空の列に解放され、trueを返します.そうしないとfalseを返します.
clear
有効文字をクリア
reserve
文字列のスペースの予約
resize
有効文字の個数をn個に変更し、複数の空間を文字cで埋める
2.3定義と初期化
定義:C言語:char s[3]={‘a’,‘b’,‘c’};stringクラス:string str;初期化:str="11123";str=“adbhbhf”; string str=sを同時に初期化することを定義します.
2.4一般的な操作
2.4.1挿入
+、str.append();// string
str.insert(n,s);// n string s
str.insert(n,s,m);// n s m
str.insert(n,m,c);// n m c
// n,m
2.4.2削除
str.erase(5);// 5( 5)
str.erase(1,4);// 1-4
str.erase(str.begin());//
str.erase(str.begin(),strbegin ()+3);//
//
str = “”;//
2.4.3置換
str.replace(n,m,s);// m n s
str.replace(n,m,s,x);// m n s x
str.replace(n,m,x,c);// m n x c
str.replace(n,m,s,x,y);// m n s x y
2.4.4検索
str.find(c);// str c
str.find(s);// str s
str.rfind(c);// str c
//
str.rfind(s);// str s
2.4.5比較
stra.compare();// string
// 1, 0, -1
3.1文字列と数値変換3.1.1文字列->数値
sscanf(s,"%d",&a);
double stod(const string &s);
//
stoi();
atoi();
int i = atoi(s.c.str());//string char* atoi
3.1.2数値->文字列
itoa();//C
to_string();//c++