7. 比较
原型:int compare(const basic_string &str); 例: int t; t=str1.compare(str4); //str1与(str4)比较,如果str1>str4,则返回1,srt1<str4,则返回-1,相等则返回0
8. copy函数
原型:size_type copy(char *str,size_type num,size_type index); 例: str2.copy(a,3,1); //变化的是a,将str2中的从第0位后的三位(1,2,3)替换a中的前三位
9. find函数
原型:size_type find(const basic_string &str,size_type index); 例: int it; it=str2.find("first",0);//主串,查找串,查找开始位置,返回主串中子串道首字母的位置
10. insert函数
原型:basic_string &insert(size_type index1,const basic_string &str,size_type index2,size_type num); 例: string st1("aaaaaa"); string st2("bccdbb"); st1.insert(1,st2,3,2);//在st1的1号位置(有0号位置)处插入st2的第三号位置的后两位字符 cout<<st1<<endl;
11. 求长度
原型:size_type length(); 例: string st3("bbbbbbbc"); int a1; a1=st3.length();//返回字符串的中字符的个数,string类中没有'/0'
12.全部替换
原型:void swap( basic_string &str ); 例: string first( "This comes first" ); string second( "And this is second" ); first.swap( second );
13. 补充
1. str1.append(str2.c_str(),5);//str2.c_str()是转换成一个const char* 2. 与C风格的char型数组不同,string类型的变量结尾是没有 ’\0’ 的 3. 可以使用str1[1]来调用具体位置的元素