博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【c++】删除string中指定的字符
阅读量:4595 次
发布时间:2019-06-09

本文共 680 字,大约阅读时间需要 2 分钟。

 

使用string::iterator(字符串迭代器)从开始 str.begin() 迭代到最后 str.end() ,再使用函数来删除迭代器所指向的字符。

 

#include 
#include
using namespace std;int main(){ string str; char ch; cin >> str; cin >> ch; string::iterator it; for (it = str.begin(); it < str.end(); it++) { if (*it == ch) { str.erase(it); it--; /* it--很重要,因为使用erase()删除it指向的字符后,后面的字符就移了过来, it指向的位置就被后一个字符填充了,而for语句最后的it++,又使it向后移 了一个位置,所以就忽略掉了填充过来的这个字符。在这加上it--后就和for 语句的it++抵消了,使迭代器能够访问所有的字符。 */ } } cout << str; return 0;}

 

转载于:https://www.cnblogs.com/huwt/p/10633896.html

你可能感兴趣的文章
scrollTop是什么及用法说明
查看>>
Solr集群的搭建
查看>>
【动态树】uva11994 Happy Painting!
查看>>
C# WinForm 文件上传下载
查看>>
ASP.NET MVC3 快速入门-第三节 添加一个视图
查看>>
【linux C】C语言中常用的几个函数的总结【三】
查看>>
一些使用Android设备调试功能的注意事项(挖职位)
查看>>
Python发一个GET请求
查看>>
花指令
查看>>
101. Symmetric Tree
查看>>
layoutSubviews总结
查看>>
字节流(笔记)
查看>>
【NOIP2013】提高组
查看>>
E - A Trivial Problem(求满足x!的尾数恰好有m个0的所有x)
查看>>
2015 Multi-University Training Contest 7 hdu 5372 Segment Game
查看>>
POJ 2356 Find a multiple
查看>>
iptables详解
查看>>
HRBUST 1376 能量项链
查看>>
Thread类的使用
查看>>
Unity-NGUI UILabel换行
查看>>