STL String常用函数备注

栏目: C++ · 发布时间: 5年前

内容简介:对于String库的函数用的比较少,常规的以下size()函数什么的不在列举,但是有些函数很好用,手写做一下备注,省的到处查;1.string使用print输出:常规条件下string只能使用cin和cout,但是使用printf输出借助函数也可以;

对于String库的函数用的比较少,常规的以下size()函数什么的不在列举,但是有些函数很好用,手写做一下备注,省的到处查;

1.string使用print输出:

常规条件下string只能使用cin和cout,但是使用printf输出借助函数也可以;

使用c_str()函数

string str="abcd";
printf("%s\n",str.c_str())l

2.insert插入:

用两种形式:

第一种,insert(pos,string)

在pos位置插入string,注意这里的pos是要插入的string第一个字符应该在的位置;

例如insert(3,str2),str2插入到从零开始算第四个位置,也就是存储的是str2的第一位;

第二种,insert(it,it2,it3)

这里的it代表的是迭代器指针,第一个指向要插入的位置,后两个指向插入string的起始位置和末位置;

例如:

str.insert(str.begin()+3,str2.begin(),str2.end());

这里的插入位置的迭代器和上一种相同,就是插入string第一个字符的起始位置;

3.erase()删除区间内的元素:

第一种 删除单个元素:

例如:

str.erase(str.begin()+4);

这里删除的是迭代器指向的元素;

第二种 删除一个区间内的所有元素

例如:

str.erase(str.begin()+2,str,end()-1);

这里的区间是闭区间,包括迭代器指向的元素;

第三种 删除区间内元素的另一种形式

形式为str.erase(pos,length)

例如:

str.erase(3,2);

这里删除的是pos位开始的length个字符,length从1开始计数,意为删除元素的总个数;

4.clear()清空函数:

清空字符串内的所有元素;

5.substr()截取函数:

substr(pos,len)返回从pos开始,总长度为len的子串;

6.find()查询子串函数:

str.find(str2)

当str2是str的子串时,返回其在str中第一次出现的位置,如果不是子串,返回string::npos(该变量常认为是find查询失败的标志);

也有形式:str.find(str2,pos),也就是从pos位开始匹配str2,返回值也是第一次出现的位置,只不过给查询的位置给定了一个起始的距离;

7.replace()替换函数:

str.replace(pos,len,str2)代表str的pos开始,len长度的子串替换为str2;

str.replace(it1,it2,it3)代表str的迭代器1,2内的刺穿替换为str2,注意,这里的str第二个迭代器i t2指向的是尾后位置


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Host Your Web Site In The Cloud

Host Your Web Site In The Cloud

Jeff Barr / SitePoint / 2010-9-28 / USD 39.95

Host Your Web Site On The Cloud is the OFFICIAL step-by-step guide to this revolutionary approach to hosting and managing your websites and applications, authored by Amazon's very own Jeffrey Barr. "H......一起来看看 《Host Your Web Site In The Cloud》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具