C++のstring宣言実戦

1990 ワード

stringの構造関数の説明
string s;                     //        s
string s(str)                 //         str    
string s(str, stridx)         //    str "    stridx"           
string s(str, stridx, strlen) //    str "  stridx     strlen"           
e) string s(cstr)             // cstr     s   
f) string s(chars, chars_len) // C    chars_len        s   。
g) string s(num, c)           //       ,  num c  
h) string s(beg, end)         //   beg;end(   end)         s   

二文字列の各ヘッダファイルについての説明
1
は、strcpy、strcatなどの文字列処理関数を含むCバージョンのヘッダファイルです.
2
C++の標準化(1998年)の過程で、互換性のために以前、標準化組織はこれらのファイルをすべて新しい定義を行い、標準ライブラリに加入し、加入後のファイル名に「c」の接頭辞を追加し、削除した.hの接尾辞名だからstring.hヘッダファイルはcstringヘッダファイルになりました.しかし、その実現は同じか互換性以前のものであり、これがソースであり、もう一つのものがあるとは思わないでください.標準ライブラリ組織が「あなたも私の標準ライブラリの一員です」と章を押したことに相当します.
3
は、s.size()、s.erase()、s.insert()など、stringクラスのさまざまな操作を含むstringの文字列クラスを定義するC++標準定義のヘッダファイルです.しかし、strcpy、strcatなどの古いCバージョンの文字列操作も含まれています.これは、ファイルに独自のstringクラスを定義するほか、Cバージョンの文字列操作を含む1つの#includeを追加することに相当します.
三string実戦宣言
1コード
#include
#include
using namespace std;
int main(){
    string str1="Spend all your time waiting.";
    string str2="For that second chance.";
    string str3(str1,6);        //"all your time waiting."
    string str4(str1,6,3);      //"all"
    char ch_music[]={"Sarah McLachlan"};
    string str5=ch_music;
    string str6(ch_music);
    string str7(ch_music,5);    //"Sarah"
    string str8(4,'a');//aaaa
    string str9(ch_music+6,ch_music+14);    //" McLachlan"
    cout<

2運転
[root@localhost charpter03]# g++ 0302.cpp -o 0302
[root@localhost charpter03]# ./0302
str1:Spend all your time waiting.
str2:For that second chance.
str3:all your time waiting.
str4:all
str5:Sarah McLachlan
str6:Sarah McLachlan
str7:Sarah
str8:aaaa
str9:McLachla