行编辑程序
程序 编辑
2023-09-14 08:56:53 时间
接受用户从终端输入的数据,当用户发现刚刚键入的字符是错误的,‘#’表示前一个字符无效;‘@’表示当前行或之前的数据无效。
#include<iostream> #include<stdio.h> using namespace std; const int MAX_LENGTH=100; struct Stack{ char *top; char *base; int stacksize; }; void InitStack(Stack &S){ S.base=new char[MAX_LENGTH]; S.top=S.base; S.stacksize=MAX_LENGTH; } void Push(Stack &S,char e){ *(S.top++)=e; } void Pop(Stack &S,char &e){ if(S.top==S.base){ return; } e=*(--S.top); } void ClearStack(Stack &S){ S.top=S.base; } void PrintStack(Stack &S){ char *e=S.base; while(e != S.top){ cout<<*e; e++; } cout<<'\n'; } void LineEdit(){ Stack S,t; InitStack(S); char e=getchar(); while(e!=EOF){ while(e!=EOF && e!='\n'){ switch(e){ case '#':Pop(S,e); break; case '@': ClearStack(S);break; default:Push(S,e); } e=getchar(); } PrintStack(S); ClearStack(S); if(e != EOF){ e=getchar(); } }; } int main(){ LineEdit(); return 0; }
相关文章
- pycharm怎么修改快捷键_vb中运行程序的快捷键是什么
- Jeewx-api 1.4.9版本发布—第三方APP开发SDK,支持微信、钉钉、企业微信、小程序等
- 云服务器上运行python程序(PyCharm本地编辑同步服务器+Anaconda)挂载跑实验详细教程[通俗易懂]
- 【愚公系列】2022年09月 微信小程序-电商项目-商品列表也功能实现12
- 微信小程序官方组件展示之开放能力ad-custom源码
- 【Visual Studio 2019】创建 MFC 桌面程序 ( 安装 MFC 开发组件 | 创建 MFC 应用 | MFC 应用窗口编辑 | 为按钮添加点击事件 | 修改按钮文字 | 打开应用 )
- 浅谈程序数据在执行时的变化详解编程语言
- Orbital Apps:新一代 Linux 程序
- 在 Linux 中移除从源代码安装的程序的一种简单的方法
- Linux系统如何设置默认打开程序(linux默认打开程序)
- 快速入门Linux编写C语言程序(linux编辑c语言)
- Linux下程序内存使用上限的限制(linux限制程序内存)
- 学习Linux:掌握程序编辑技能(linux 程序编辑)
- 红色钥匙快速安装Redis桌面程序(redis桌面程序下载)
- 使用winapi安装Windows服务示例程序