3-27(string)

string是表示字符串的字符串。管理字符数组的一个类。数组

在使用string类时,必须包含#include头文件以及using namespace std;ide


string对象的容量操做:spa

注意:对象

size();求的是字符个数。ci

clear();只是将string中有效字符清空,不改变底层大小,也就是capacity。字符串

resize(n)和resize(n,c);都是将字符串中有效字符个数改变到n个,也就是size变为n;get

不一样的是当字符个数增长时:resize(n)是用0来填充多余空间,resize(n,c)是用字符c来填充;、string

resize在增长元素个数时,可能会改变底层容量的大小,可是在减小元素个数时,不会改变底层容量大小。(由于resize改变的是size,而不是capacity)it


string类对象的访问及遍历操做class

一、for+operator[pos]   返回pos位置的字符,也就是重载了[]运算符,对象能够直接当数组用。

二、begin+end    为迭代器用法(iterator);begin获取一个字符的迭代器,end为最后i一个字符下一个位置的迭代器。(迭代器取元素须要解引用)

三、rbegin+rend  为倒着遍历迭代器用法。

四、范围for:for(auto ch:array){}

五、c_str返回c格式得字符串。如char* ch=c_str();


查找

find:

find(ch,pos)pos位置开始找ch的值,pos默认为0,返回值为下标,若是没有找到返回值为string::npos

rfind  由end开始查找。

substr(pos,len)在pos位置开始截取len长度的字符串。substr为某个对象的字串。


输入:

getline(cin,s);获取一行字符串,遇到换行停。

cin和scanf都是遇到空格或者换行就停。

相关文章
相关标签/搜索