STL String常用函数备注

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

内容简介:对于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指向的是尾后位置


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

查看所有标签

猜你喜欢:

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

敏捷估计与规划

敏捷估计与规划

[美] Mike Cohn / 宋锐 / 清华大学出版社 / 2007-7 / 39.90元

《敏捷估计与规划》一书为对敏捷项目进行估计与规划提供了权威实际的指导方针。在本书中,敏捷联盟的共同创始人Mike Cohn讨论了敏捷估计与规划的思想,并使用现实的例子与案例分析向您详细地展示了如何完成工作。本书清晰地阐述了有关的概念,并引导读者逐步认识到下列一些问题的答案:我们要构建什么?它的规模有多大?需要在什么时候完成?到那个时候我们到底能完成多少?您首先会认识到优秀的计划由哪些东西组成,接着......一起来看看 《敏捷估计与规划》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具