C++中erase的用法

这篇具有很好参考价值的文章主要介绍了C++中erase的用法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

  1. erase的简单介绍
  2. erase的两种用法
  3. 总结

 1.erase的简单介绍

        erase翻译过来带有消除的意思,所以在C++的string中可以用来消除单个字符或者长串字符,用起来是非常方便滴^_^

 2.erase的两种用法

        用法一:例如我想要删除下标为1后的所有字符

#include<iostream>
#include<string>
using namespace std;
int main()
{
    string str = "ABCDE";
    str.erase(1);
    cout << str << endl;
    return 0;
}

        这样打印出来的结果就只有A了,因为我是从下标为1的位置开始删除的(第一个下标为0)。

        用法二:例如上面举的例子我就想删除ABCDE中的C

#include<iostream>
#include<string>
using namespace std;
int main()
{
    string str = "ABCDE";
    str.erase(2, 1);
    cout << str << endl;
    return 0;
}

        前面的数字2表示我想从下标为2的位置开始删除,后面的数字1表示我只删一个数,因此这串代码打印出来的就是ABDE了。逗号前面的数表示从哪个位置开始删,逗号后面的数表示要删多少个数。

3.总结

        这是在做蓝桥杯一个删除字符题目所学习到的东西,稍微做一下总结,加深一下印象。顺便附带一下这个题(字符删除)。

题目描述

给定一个单词,请问在单词中删除 t 个字母后,能得到的字典序最小的单词是什么?

输入格式

输入的第一行包含一个单词,由大写英文字母组成。

第二行包含一个正整数 t

其中,单词长度不超过 100,t 小于单词长度。

输出格式

输出一个单词,表示答案。

输入样例复制

在这里给出一组输入。例如:

LANQIAO
3

输出样例复制

在这里给出相应的输出。例如:文章来源地址https://www.toymoban.com/news/detail-635483.html

AIAO

 

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str;
	cin >> str;
	int n;
	cin >> n;
	while (n--)
	{
		for(int i = 0; i < str.size(); i++)
		{
			if (str[i] > str[i + 1])
			{
				str.erase(i, 1);//从第i个数开始,消除1个数,包括i本身
				break;
			}
		}
	}
	cout << str << endl;
	return 0;
}

到了这里,关于C++中erase的用法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HOJ 系统常用功能介绍 部署快速入门 c++ python java编程语言在线自动评测 信息奥赛一本通 USACO GESP 洛谷 蓝桥 CSP NOIP题库

    技术支持微  makytony   终身更新维护 功能类似洛谷和信息奥赛一本通,支持CSP复赛中的freopen文件输入输出方式提交,模拟真实考试环境,防止出现 本地  AC 比赛  WA  PA TLE  爆零 的惨剧。 组织比赛作业,创建题目、查看用户提交代码、下载评测数据等都没限制。 约  328

    2024年02月13日
    浏览(38)
  • [开发语言][C++]:递增递减运算符

    递增运算符和递减运算符为对象的+1和-1提供了简洁的书写形式。 自增自减运算符的应用: 这两个运算符除了应用在算术运算,还可应用于迭代器,因为很多迭代器并不支持算术运算。 递增和递减运算符有两种书写形式:前置版本和后置版本。 前置版本 ++i --i :首先将运算

    2024年01月25日
    浏览(48)
  • 第七十七篇:车辆安全-车载软件C++语言开发指南(AUTOSAR C++)

    C++是面向对象的编程,比C语言更加复杂,抽象程度高,但C++在一些图像处理、系统、控件的编程方面,实用性更强,具有自己的编程优势。在车载嵌入式系统的开发中,C和C++都具有重要的作用。C++语言所使用的面向对象的编程技术如封装、继承和多态性极大的提高了在大规

    2024年02月04日
    浏览(82)
  • 第十三届蓝桥杯国赛 C++ C 组 Java A 组 C 组 Python C 组 E 题——斐波那契数组(三语言代码AC)

    如果数组 A = ( a 0 , a 1 , ⋯ . a n − 1 ) A=(a_0,a_1,⋯.a_{n-1}) A = ( a 0 ​ , a 1 ​ , ⋯ . a n − 1 ​ ) 满足以下条件, 就说它是一个斐波那契数组: n ≥ 2 ; n≥2; n ≥ 2 ; a 0 = a 1 a_0=a_1 a 0 ​ = a 1 ​ 对于所有的 i ( i ≥ 2 ) , i(i≥2), i ( i ≥ 2 ) , 都满足 a i = a i − 1 + a i − 2 。 a_i=a_{i-1}+a_{i-2

    2024年01月18日
    浏览(42)
  • [开发语言][c++][python]:C++与Python中的赋值、浅拷贝与深拷贝

    写在前面 :Python和C++中的赋值与深浅拷贝,由于其各自语言特性的问题,在概念和实现上稍微有点差异,本文将这C++和Python中的拷贝与赋值放到一起,希望通过对比学习两语言实现上的异同点,加深对概念的理解。 C++中所谓的 浅拷贝 就是由(系统默认的) 拷贝构造函数对

    2024年02月02日
    浏览(56)
  • [开发语言][python][c++]:C++中的this指针和Python中的Self -- 26岁生日

    以朋友的新岁祝福开篇,祝笔者也祝大家☺️: 之前一直对 C++ 中的 this 和 python 中的 self 到底是什么关系,为什么 C++ 要显式的写出来,python 则不需要? 模糊不清,趁着周末整理一下相关结论,希望本篇文章可以解答这些问题,同时对C++和Python中的类加深些理解。 python 当

    2024年01月24日
    浏览(69)
  • 【VisualStudio】使用 C++ 语言开发 Qt 环境配置教程

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 先上一张效果图,具体步骤主要分为以下三步。 这一步不再赘述,注意一定要安装 C++ 语言。 可以参考这个教程 Visual Studio 2022安装与使用教程。 这一步也不再赘述,网上搜索教

    2024年02月10日
    浏览(76)
  • [开发语言][c++]:Static关键字和全局变量

    写在前面: 如果您只是想回顾或了解一下static和全局变量的异同点,那么下面的总结将满足您的需求。 如果您是一位初学者或对二者的使用模棱两可,建议您读完该篇文章,相信这一篇将解答完您对于static以及全局变量的所有疑惑。 如有问题或建议欢迎评论 or 私信

    2024年01月20日
    浏览(56)
  • 蓝桥杯(迷宫,C++)

     思路: 1、注意输入用字符串。 2、采用广度搜素的方法来求解。 3、因为最后要求字典序最小且DLRU,所以在遍历四个方向的时候, 先向下,再向左、右,最后向上。

    2024年02月07日
    浏览(35)
  • 蓝桥杯(七段码,C++)

     思路: 1、把灯管的连接转为图结构,相邻的灯管即认为有边。 2、用深度搜索,去计算有多少种不同字符。 3、因为有每种字符都会重复算两遍,最后的结果需要除以2。    

    2024年02月07日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包