标签:ASDK string span question 表示 新特性 -- code 打印
概念:相当于char*的封装,理解为字符串
/**C中定义字符串以及打印*/ char *ch="asdkajbf"; for(int i=0;ch[i]!=‘\0‘;i++) cout<<*(ch+i); /**C++中*/ string s="ssadaffw"; cout<<s<<endl;
用cin读入字符串的时候,是以空格为分隔符的,如果想要读入一整行的字符串,就需要用getline
s 的长度可以用s.length() 获取(有几个字符就是长度多少,不存在char[] 里面的什么末尾的结束之类的)
string s; // 定义一个空字符串s getline(cin, s); // 读取一行的字符串,包括空格 cout << s.length(); // 输出字符串s的长度
+=对于字符串、字符有效,数字会转为asc码
string s="5418340"; sort(s.begin(),s.end()); cout<<s;
string &insert(int p0, const char *s);——在p0位置插入字符串s
string &insert(int p0, const char *s, int n);——在p0位置插入字符串s的前n个字符
string &insert(int p0,const string &s);——在p0位置插入字符串s
string &insert(int p0,const string &s, int pos, int n);——在p0位置插入字符串s从pos开始的连续n个字符
string &insert(int p0, int n, char c);//在p0处插入n个字符c
iterator insert(iterator it, char c);//在it处插入字符c,返回插入后迭代器的位置
void insert(iterator it, const_iterator first, const_iteratorlast);//在it处插入从first开始至last-1的所有字符
void insert(iterator it, int n, char c);//在it处插入n个字符c
string str="to be question"; string str2="the "; string str3="or not to be";
string::iterator it; str.insert(6,str2); // to be (the )question str.insert(6,str3,3,4); // to be (not )the question str.insert(10,"that is cool",8); // to be not (that is )the question str.insert(10,"to be "); // to be not (to be )that is the question str.insert(15,1,‘:‘); //加一个‘.‘ to be not to be(:) that is the question it = str.insert(str.begin()+5,‘,‘); // to be(,) not to be: that is the question str.insert (str.end(),3,‘.‘); // to be, not to be: that is the question(...) str.insert (it+2,str3.begin(),str3.begin()+3); // (or )
/*begin是头迭代器,end是尾迭代器*/ string s="5418340"; s.erase(s.begin());//删除第一个 s.erase(--s.end());//删除最后一个 cout<<s;
string s2=s.substr(4); // 表示从下标4开始一直到结束 string s3=s.substr(5,3); // 表示从下标5开始,3个字符
1.for循环
string s="5418340"; for(int i=0;i<s.length();i++) cout<<s[i];
2.迭代器
for(string::iterator it=s.begin();it!=s.end();it++) cout<<*it;
3.迭代器化简
for(auto it=s.begin();it!=s.end();it++) cout<<*it;
4.利用C++ 11新特性for循环
for(auto x:s) cout<<x;
标签:ASDK string span question 表示 新特性 -- code 打印
原文地址:https://www.cnblogs.com/transmigration-zhou/p/12269811.html