编程基础 - 栈的应用 - 行编辑问题(Line Editing)

本文介绍如何利用栈解决行编辑问题,重点在C++编程中使用栈进行字符检测和处理,包括对回车符、退格符和退行符的处理。文章包含代码实现的头文件和主函数部分,以及运行结果展示。
摘要由CSDN通过智能技术生成

编程基础 - 栈的应用 - 行编辑问题(Line Editing)

返回分类:全部文章 >> 基础知识

返回上级:编程基础 - 栈(Stack)



1 行编辑问题简述

我们在接收每一个字符时,将进行检测,判断动作。

在C++的标准输入流中,如果使用cin >>,它在按第一次回车时会将之前的输入放入输入缓冲区并不会检测换行符\n第二次回车才会检测第一次按下的回车。类似的,还有EOF(Windows下是Ctrl+Z,即^z),这个的检测需要各位自行进行尝试。

在这里,我们将不使用cin >>的方式,将使用 cin.get()并假设输入中$为退格符,#为退行符

Tips
就算是使用cin.get(),如果有其它输入流操作,也可能造成两次回车。


2 行编辑(C++ Code)

2.1 头文件main.h

#pragma once

#include <string> // 字符串,用于打印结果
#include <stack> // 栈

2.2 主函数文件main.cpp

#include "main.h"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值