C++中String 操作(一)
阿新 • • 發佈:2019-01-28
相對於C語言中麻煩的C字串操作,C++中提供了string類。本文將繼續繼承前文的風格,以程式碼為驅動,初步簡介C++string類最簡單的部分。
string的初始化
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s1;
cin >> s1;//遇到回車或者空格停止
string s2(s1);//用字串s1,初始化s2
string s3("value!");//另一種方法
string s4 = s3;//字串的直接賦值
string s5(10, 'a');//把string物件初始化為10個a組成的串
cout << s1 << endl;
cout << s2 << endl;
cout << s3 << endl;
cout << s4 << endl;
cout << s5 << endl;
cout << s3.size() << endl;//列印s3中元素的個數
return 0;
}
作為一種複雜而龐大的程式語言C++中為很多特定情況下的特殊操作設定了特殊的過載函式,getline()便是其中之一
getline()有個奇怪的特性,即它會讀入換行,但是緊接著它就會把它丟掉
#include <iostream>
#include <string>
using namespace std;
int main()
{
string line;
while (getline(cin, line))//getline會把空格讀入,但是在將所存內容存到string物件時,會把換行丟掉
cout << line << endl;
string word;
getline(cin, word);
cout << word.empty() << endl;//檢測是否為空,為空返回true
return 0;
}