c++string注意事項
872 ワード
#include
#include
using namespace std;
int main()
{
string str({ 65,'B','\0','D','E' });
string str1({ 97,'b','c','\0','e','f' });
char str2[] = { '1','2','\0','3','4' };
cout << str + str2 + str1 << ", :" << (str + str2 + str1).length() << "
";
string str3 = (str + str2 + str1).c_str();
cout << str3 << ", :" << str3.length() << "
";
}
実行結果:
AB DE12abc ef, :13
AB, :2
注意:
stringクラスの変数には'0'が含まれることができる.この変数のlength()は長さであり、'0'で終わるのではなく、その変数の長さを判断するからである.C言語タイプの文字列構造のみが'0'で終わります.たとえば、char*またはchar[]で定義された文字配列です.