1. 初始化:
string s1("ssss");
//s1是字面值“ssss”的副本
string s2(s1);
//s2是s1的副本
string s3=s2;
//s3是s2的副本
string s4(10,'c');
//把s4初始化
string s5="hiya";
//拷贝初始化
2. 复制:
char cs[]="12345";
string s7(cs,3);
//复制字符串cs的前3个字符到s当中//string s(s2,pos2)
string s8="asac";
string s9(s8,2);
//从s2的第二个字符开始拷贝,不能超过s2的sizestring a="abcd";
string b="123";
a=a.substr(0,1)+"---"+b;
cout<
3. 数字与string的转换
// 数字转字符
int j=323232;
string a;
char b[100];
itoa(j,b,10);
a=b;
// 字符转数字
int i,j=323232;
string a="1212.2121";
i=atoi(a.c_str());
// 将string的指针传入。
4. string的打印:
printf("%s",str.c_str());
for(string::iterator it=str.begin();
it!=str.end();
it++){
printf("%c",*it);
}
5. string与字符串数组之间的转换:
char ch [] = "ABCDEFG";
string str;
str = ch;
// 或者这个也行 str+=ch;
char buf[10];
string str("ABCDEFG");
strcpy(buf, str.c_str());
6.字符串的切割:
string string = "004-034556";
string[] parts = string.split("-");
string part1 = parts[0];
// 004
string part2 = parts[1];
// 034556
字符串之间的比较:
// 直接
string a="aaa";
string b="bbb";
// a==b即可
// 千万不要用a=='a'这种方法,ascii与字符不一样。string a="cd";
string b="cc";
cout<<(a>b);
// 1a="bba";
b="bb";
cout<<(a>b);
// 0string a="abb",b="bb";
cout<<(a>b);
// 0
// 比较符号会逐个比较string中的ascii大小,如果有比较到立马退出return 1
// 如果b跟a的前面部分一样,但是a的长度比b大则返回1