1、string输出
#include <iostream>
using namespace std;
void StrCout()
{
string str2("ojkojkojk");
cout << str2 << endl;
cout << str2.c_str() << endl;
cout << str2[0] << endl;
cout << str2.at(3)<< endl;//at()函数返回一个引用,指向在index位置的字符(下标),如果index不在字符串范围内,at()会报告“out f range”错误
//越界处理
try
{
str2.at(19);
}
/*catch (...)
{
cout << "越界了\n";
}*/
catch (out_of_range& a)
{
cout << "越界了\n";
}
}
int main()
{
StrCout();
system("pause");
return 0;
}
2、修改
#include <iostream>
using namespace std;
void StrCout()
{
string str2("ojkojkojk");
cout << str2 << endl;
cout << str2.c_str() << endl;
cout << str2[0] << endl;
cout << str2.at(3) << endl;//at()函数返回一个引用,指向在index位置的字符(下标),如果index不在字符串范围内,at()会报告“out f range”错误
//越界处理
try
{
str2.at(19);
}
/*catch (...)
{
cout << "越界了\n";
}*/
catch (out_of_range& a)
{
cout << "越界了\n";
}
}
void StrChange()
{
string str2("ojkojkojk");//改
/*str2[2] = 's';
str2.at(3) = 'q';//替换*/
//string str3(5, 'q');//增
string str3("abcdefg");//insert 函数。插入
//str2.insert(2, str3);//将str3插入下标为2的位置。
//str2.insert(2, "akfdsks");//将字符串插入下标为2的位置。
//str2.insert(3, str3,0,2);//将str3中下标为[0,2)插入str2中的下标为3的位置。
//str2.insert(3,"sjhdfja", 2);//将字符串中下标为[0,2)插入str2中的下标为3的位置。
//str2.insert(3, 2, 'b');// 在str2的下标为3的位置插入2个b。
//str2 += str3;//末尾加入。//增
//str2 += "sjhasd";//末尾加入。
//append函数//末尾加入,与insert近似,但插入的是末尾。//增
//str2.append(str3);
//str2.append("sdhasjj",3);//前三个加到str2后
//str2.append(3,'w');//将三个w加到str2后
//重新赋值//改
//str2 = "qwer";
//str2 = str3;
//cin>>str2;
//str2.assign("ashjd", 2);//与insert和append用法相同。
//删除
//str2.erase(2,3);//在str2中从下标为2开始删除3个字符。
str2.erase(0,str2.length());//删除所有字符。
cout << str2 << endl;
}
int main()
{
//StrCout();
StrChange();
system("pause");
return 0;
}