string的常见用法 通过:赋值、添加、比较和删除四个方面来比较
1. string的赋值: str.assign( )
string str;
str.assign("asdasd"); //两种赋值方式而已
string str_x = str; //赋值
string str1;
str1.assign(str, 1, 4); //赋值一段
string str2;
str2.assign(5, 'a'); //赋值确定数量的相同值
string str3;
str3.assign("abcdefg", 5); //赋值但是不超过5位
2. string的添加: str.push_back( ); +; str.append( ); str.insert( );
string str;
str.assign("abcde"); //两种赋值方式而已
str.push_back('f'); //.push_back 在字符串后边添加一个字符
cout << str << endl;
str.insert(2, "XYZ"); //在第二个字符串后边添加一段
cout << str << endl;
string str1;
str1 = "ABC" + str; //两个字符串连接起来
cout << str1 << endl;
string str2="123456";
str2.append("ZLA"); //在字符串的最后边加上一段字符
str2.append(5,'x'); //在尾部添加5个x
str2.append(str1, 1, 3); //在str2的尾部添加上str1的1-3的字符
cout << str2 << endl;
3. 比较: ><=等方式; compare; find;
string str;
str.assign("abcd"); //两种赋值方式而已
str.compare("abcd"); //str和“abcd”比较,相同返回0
str.compare("dcba"); //str比这个字符串小,返回-1
str.compare("ab"); //str比这个字符串打,返回1
str.compare(0, 2, str, 2, 2); //用str的第0位向后的两位 和str第2位往后的两位进行比较
string zla = "bc";
cout<<str.find(zla);//如果有这个字段,则返回这个字段开始的下标(第一个重复串的下标)
//如果没有这个字段,则会返回乱码
4. 删除: erase(); clear(); replace();
string str;
str.assign("abcdefghijk");
str.length(); //字符串的长度 str.size()也是这个效果
str.replace(2, 2, "ZLA"); //把坐标为2向后的两个数替换成ZLA
str.erase(2, 3); //从坐标为2开始向后删除3个数
str.erase(2); //删除坐标为2以后的字符(包括2)
str.clear(); //变成空串