//话不多说,代码先行。

#pragma once
#include <stdlib.h>
#include<iostream>
using namespace std;#define STACK_INIT_SIZE 10
#define OVERFLOW - 2
#define OK 1
#define ERROR 0
typedef char SElemType;//栈结构体
typedef struct
{SElemType* base;//栈底SElemType* top;//栈顶int stacksize;
}SqStack;int InitStack(SqStack* S) //初始化栈
{S->base = (SElemType*)malloc(STACK_INIT_SIZE * sizeof(SElemType));if (!S->base){exit(OVERFLOW);//OVERFLOW定义为-2}S->top = S->base;S->stacksize = STACK_INIT_SIZE;return OK;
}int Push(SqStack* S, SElemType e)  //入栈
{*S->top++ = e;//先赋值在指针自加return OK;
}int Pop(SqStack* S, SElemType* e)//删除栈中的元素
{if (S->top == S->base) return ERROR;//ERROR定义为0*e = *--S->top;return OK;
}int ClearStack(SqStack* S)//清空栈中的元素
{S->top = S->base;return OK;
}int DestoryStack(SqStack* S)//销毁栈
{S->top = S->base;free(S->base);S->top = NULL;S->base = NULL;return OK;
}void LineEdit(SqStack* S)//行编辑程序
{SElemType* p, ch, c;char t = '1';int i = 1;InitStack(S);cout << "输入第" << i << "行:";ch = getchar();while (1){while (ch != EOF) //EOF定义为-1{switch (ch){case '#':Pop(S, &c); break;case '@':ClearStack(S); break;default:Push(S, ch); break;//传入字符}t = ch;ch = getchar();t = ch;if (ch != EOF && ch == '\n'){break;}}cout << "输出第" << i << "行:";p = S->base;while (p != S->top){cout << *p;++p;}cout << endl << endl;ClearStack(S);i++;if (t == '\n'){cout << "输入第" << i << "行:";ch = getchar();if (ch == '\n'){cout << "您输入为空,已结束输入" << endl;break;}}}
}int main()//005
{SqStack sq;cout << "**************        操作规则          **************" << endl;cout << "**************  1.输入'#'号为退格操作   **************" << endl;cout << "**************  2.输入'@'号为退行操作   **************" << endl;cout << "**************  3.输入'@'号即为空格行   **************" << endl;cout << "**************  4.输入回车即打印所在行  **************" << endl;cout << "**************  5.连续输入两次空则退出  **************" << endl;LineEdit(&sq);//进行括行编辑DestoryStack(&sq);//将栈销毁return 0;
}

//运行结果:

小小代码奉上,希望有所帮助。

【C++】C++行操作,退格,退行,空格输出。相关推荐

  1. python命令行无法使用退格键、方向键

    直接敲入python,命令交互式,无法使用退格键.方向键 解决办法一: 手动安装: sudo apt-get install libncurses5-dev 下载: https://pypi.pyth ...

  2. 解决eclips代码批量首行缩进 退格 调试

    1.首先选中所需要缩进的代码,然后按Tab键,每按一次缩进一次 缩进:按Tab键,它是缩进的快捷键. 2.退格同理,没按一次shift+tab键,退格一次 退格:同时按住Shift和Tab键.

  3. js禁用退格键(BackSpace)

    js禁用退格键(BackSpace) 在TextBox中设置 contentEditable="false" 或者 ReadOnly="true" 那么该文本框 ...

  4. wps文字退格会删掉文字_wps文档中第一行字后面有很多空格,可是第二行就是上不来,按删除键就会把第一行字删了,为什么...

    wps文档中第一行字后面有很多空格,可是第二行就是上不来,按删除键就会把第一行字删了,为什么 如果下一行文字是一个整体,上一行行末放不下这个整体内容,就会出现这种情况. 选中,右击,段落,换行和分页, ...

  5. wps文字退格会删掉文字_WPS第二行文字前面有大量空白,按退格不会动,只是把上一行末尾的字去掉。...

    选该单元格-菜单栏-开始-段落版块-右下角:下拉)段落-缩进和间距-缩进:左缩进:0字符-确定www.mh456.com防采集. WPS第二2113行文字前面有大量空白,5261按退格不会动,只是把上 ...

  6. MFC文本编程--退格键的操作

    // 退格键的操作 COLORREF clr = dc.SetTextColor(dc.GetBkColor()); // 设置使用背景颜色 dc.TextOut(0, 0, m_strLine); ...

  7. c/c++实现计算器功能(输入多项表达式 + - x / %,等号输出结果与 2 ,8,16,10进制结果,全清除) 退格操作

    c/c++实现计算器功能(输入多项表达式 + - x / ,等号输出结果.) 添加了退格操作,给补上了,在文章最后(附源码) 课程设计实现计算器功能 加减乘除 先讲大概思路,模拟计算器,大家用的计算器 ...

  8. JS屏蔽功能类(屏蔽F5,退格键,空格键......

    1.屏蔽功能类ITPUB个人空间Ar~${ d8L4Y ITPUB个人空间0O:n2A d;w s 1.1 屏蔽键盘所有键ITPUB个人空间\3Z0Ce5{ 4i#tb(G` \22328375< ...

  9. [汇编] 汇编语言实现简易文本编辑器(光标移动、上卷和退格删除)

    https://blog.csdn.net/NK_test/article/details/46045201 汇编实现的一个简易的文本编辑器,代码中有详细的注释. 思路和细节: (1) 在屏幕中央初始 ...

最新文章

  1. VSTS2010部署一:TFS安装
  2. linux-basic(10)vim程序编辑器
  3. php 档案,PHP 档案包 (PHAR)
  4. js判断函数是否存在
  5. nagios介绍及Server安装(三)
  6. 2022年上半年软件设计师(软考)————考后总结
  7. 打开matlab窗口,不小心关闭了matlab的命令窗口怎么再打开?谢谢,十分急
  8. 抖音互关源码 E4A源码含数据库后台程序搭建可用
  9. 指数函数中x的取值范围_指数函数x的取值范围是
  10. linux 服务器远程开机,Linux 下实现远程开机
  11. sqlserver和mysql定时同步_通过作业,定时同步两个数据库_sqlserver
  12. raid卡缓存对硬盘性能_告诉你NAS究竟用不用RAID?万兆网络下NAS读取写入实测分...
  13. Phobos家族后缀.actin勒索病毒变体详细说明,删除后缀.actin勒索病毒并尝试恢复文件
  14. 收藏!最全的可视化学入门算法教程(Python实现)
  15. 2020年G2电站锅炉司炉复审考试及G2电站锅炉司炉证考试
  16. 为什么我的 JavaScript 代码会收到“请求的资源上不存在 ‘Access-Control-Allow-Origin‘ 标头”错误,而 Postman 却没有?
  17. 2013年全年目标及执行情况跟踪
  18. 出曹操铝单板绘图插件,捷龙铝单板插件,鸿宇铝单板CAD绘图插件
  19. c语言随机点名器(源码)
  20. 享受制造业中小微企业缓缴税费应注意七点

热门文章

  1. 怎样使div中的文字在div的底部显示?
  2. 垂直滤波和水平滤波的区别_有源滤波与无源滤波的区别——帝森克罗德技术科普贴...
  3. 【测试工具】Xmind思维导图一键生成Excel测试用例
  4. javapython区别最全整理终极收藏_Perl、PHP、Python、Java 和 Ruby 比较【转载+整理】...
  5. MDaemon退信分析:553 MI:SUM
  6. 转:简单,能不做就不做
  7. 【算法练习】83.n 的第 k 个因子——枚举
  8. python程序设计之turtle绘图
  9. Linux cat与tail 命令
  10. 数据挖掘在市场营销的应用(ZZ)