1、字符串的输入
// 1、输入不含空格的字符串
string str;
cin >> str;
// 2、输入包含空格的字符串
string str;
// 如果前面有了cin输入,则还需添加如下一句
// getchar();
getline(cin, str);
// 3、不停输入字符串,直到遇到回车
string str;
// 如果前面有了cin输入回车,则还需添加如下两句句
// cin.clear();
// cin.ignore();
while(cin.peek()!='\n'){
cin >> str;
}
// 4、不停输入字符串,字符串间以空格分隔,直到遇到回车
string str;
while(cin >> str){
cout << str << endl;
// getchar是用来吸收空格和回车的
if(getchar() == '\n'){
break;
}
}
// 输入
// ni hao ya
// 输出
// ni
// hao
// ya
//
2、字符串的拼接(增加)
string a = "123";
string b = "456";
string c = a + b;
cout << c << endl;
// 123456
3、字符串的删除
string str = "ab000";
// 只有一个参数,代表删除这个参数到末尾之间的字符串
str.erase(2);
cout << str;
// ab
string str = "ab000";
// 有两个参数,代表删除第一个参数开始,删除第二个参数个的字符串
str.erase(2,3);
cout << str;
// ab
4、字符串的查找
string str = "000ab000";
int pos = str.find("ab");
if(pos == str.npos)// 没找到
cout << "non" << endl;
else
cout << pos;
// 3
5、字符串的截取
string str="000ab000";
cout << str.substr(3,2) << endl;
// ab
6、字符串的比较
string str1 = "abc";
string str2 = "ade";
if(str1 == str2){
cout << "等于" << endl;
}else if(str1 > str2){
cout << "大于" << endl;
}else{
cout << "小于" << endl;
}
// 小于
7、字符串的遍历
string str = "abcde";
for(int i=0; i<str.size(); i++){
cout << str[i] << " ";
}
// a b c d e