C++ 中 string类的使用
参考接口:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html
自己写的demo如下,已经编译验证
// // main.cpp // 3.string // // Created by zhufengzhu on 16/7/26. // Copyright © 2016年 zhufengzhu. All rights reserved. // #include <iostream> #include <string> using namespace std; int main(int argc, const char * argv[]) { //1、构造 string s1("hello"); string s2 = "hello123"; string s3(5,'a'); cout<<s3<<endl; //2、相关特性 //返回一个非null终止的c字符数组 char *p1 = (char *)s1.data(); cout<<p1<<endl; //返回一个以null终止的c字符串 char *p2 = (char *)s1.c_str(); cout<<p2<<endl; char tmp[100] = {}; //从下标1开始的2个字符拷贝到tmp s2.copy(tmp,2,1); cout<<"截取的字符"<<tmp<<endl; //3、容量 cout<<"s2的容量"<<s2.capacity()<<endl; cout<<"s2最大的长度"<<s2.max_size()<<endl; cout<<"s2当前的长度"<<s2.size()<<endl; cout<<"s2当前的长度"<<s2.length()<<endl; cout<<"s2是否为空"<<s2.empty()<<endl; s2.resize(100);//后面加\0字符填充 cout<<"s2修改后的大小"<<s2.size()<<endl; cout<<"s2修改后的长度"<<s2.length()<<endl; cout<<s2<<endl; //4、字符修改 //连接 string s4 = "happy"; string s5 = s4+" everyday"; cout<<s5<<endl; //追加 s4.append("123"); cout<<s4<<endl; //比较 if(s4.compare("zappy")>=0){ cout<<"s4比较大"<<endl; } else{ cout<<"s4比较小"<<endl; } string s6 = "abc"; string s7 = "ABC"; //比较符重载 if(s6>s7){ cout<<"s6大"<<endl; } //子串 string s8 = s6.substr(0,2); cout<<s8<<endl; //交换 s8.swap(s6); cout<<s8<<endl; //查找字符、字符串 string s9 = "sundday"; int pos = s9.find("d",0); cout<<"pos的位置"<<pos<<endl; pos = s9.find("day"); cout<<"pos的位置"<<pos<<endl; //替换 string s10 = "abcdefg"; s10.replace(2, 2, "AAAAA"); cout<<"替换后"+s10<<endl; //插入 string s11 = "ab"; s11.insert(1, "BBBB"); cout<<s11<<endl; //删除 string s12 = "0123456"; s12.erase(2, 2); cout<<s12<<endl; //迭代器 string::iterator p = s12.begin(); for (int i=0; i<s12.length(); i++) { cout<<*p<<endl; p++; } return 0; }