news 2026/4/21 5:21:06

轻量的C++命令行交互器2.0

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
轻量的C++命令行交互器2.0

上次写了一个C++命令行交互器(基于GNU g++),简介看上一篇文章。这次主要增加一点新功能和修复bug。

新功能:

1.上下键回溯,回溯的内容仅限已经输入并使用回车提交的内容,可在普通模式、全模式、半编辑器模式(新功能)下使用上下键回溯,重启程序后回溯列表清空;

2.Ctrl+S保存模式。如果您想在普通模式、全模式保存已使用回车提交的内容,按Ctrl+S即可。输入保存目录(不输入就回车默认程序所在目录)和文件名(不能为空)保存上一次的提交内容。普通模式下使用Ctrl+S会在文件内加入预设模板来组成完整的程序,全模式则不加模板。如下则展示它们的使用方法。

zhang@zhang-b460mak2:~/Desktop$cppsh #启动普通模式 === C++ Interactive Shell === Ctrl+D run, quit exit, Ctrl+S save >>> cout<<"Hello ShaMoHeLan and C++!"<<endl; --- Running --- [Output] Hello ShaMoHeLan and C++! [Save Code] Directory (default: current): Filename: hello.cpp Saved to: /home/zhang/Desktop/hello.cpp >>> quit Bye!

hello.cpp的内容:

zhang@zhang-b460mak2:~/Desktop$ cat hello.cpp #include <iostream> using namespace std; int main(void) { cout<<"Hello ShaMoHeLan and C++!"<<endl; return 0; } zhang@zhang-b460mak2:~/Desktop$

--full下的Ctrl+S:

zhang@zhang-b460mak2:~/Desktop$ bash ./cppsh.py --full === Full C++ Mode === Ctrl+D run, quit exit, Ctrl+S save >>> #include <iostream> ... using namespace std; ... int main(){ ... cout<<"Hello C++!!!"<<endl; ... return 0;} --- Running --- [Output] Hello C++!!! [Save Code] Directory (default: current): Filename: Hello1.cpp Saved to: /home/zhang/Desktop/Hello1.cpp >>> quit Bye!

Hello1.cpp的内容:

zhang@zhang-b460mak2:~/Desktop$ cat Hello1.cpp #include <iostream> using namespace std; int main(){ cout<<"Hello C++!!!"<<endl; return 0;}

3.加入半编辑器模式。使用--sture启动该模式,该模式下,需要输入完整的C++代码,使用Ctrl+D编译运行成功后会弹出保存路径和文件名输入提示,不想保存按两次回车即可继续使用。如下:

zhang@zhang-b460mak2:~/Desktop$ bash ./cppsh.py --sture === C++ Sture Full Mode === Ctrl+D run, quit exit, Ctrl+S save >>> #include <iostream> ... using namespace std; ... int main(){ ... cout<<"mmmmm"; ... return 0;} --- Running --- [Output] mmmmm [Save Code] Directory (default: current): Filename: j.cpp Saved to: /home/zhang/Desktop/j.cpp >>> quit Bye!

完整的代码在主页资源。免费。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 5:13:53

第14篇:嵌入式核心控制外设:TI C2000 HRPWM模块原理与工业应用

本文将聚焦TI C2000系列微控制器的核心外设——HRPWM&#xff08;High-Resolution Pulse Width Modulation&#xff0c;高分辨率脉宽调制&#xff09;模块&#xff0c;面向学生与嵌入式开发者&#xff0c;以严谨正式的风格&#xff0c;从硬件架构、工作原理到实战开发、工业落地…

作者头像 李华
网站建设 2026/4/21 5:11:51

Phi-3.5-mini-instruct开源可部署:GitHub可复现的Phi-3.5轻量服务部署方案

Phi-3.5-mini-instruct开源可部署&#xff1a;GitHub可复现的Phi-3.5轻量服务部署方案 1. 模型概述 Phi-3.5-mini-instruct是微软推出的轻量级指令微调大语言模型&#xff0c;采用Transformer解码器架构&#xff0c;支持128K超长上下文窗口。该模型针对多语言对话、代码生成和…

作者头像 李华
网站建设 2026/4/21 5:02:56

从rand()到主键冲突:深入剖析floor()报错注入的底层机制

1. 为什么floor()报错注入值得深入研究 第一次接触floor()报错注入时&#xff0c;很多人会觉得这不过是又一个SQL注入技巧罢了。但当我真正深入MySQL源码层面分析时&#xff0c;才发现这个看似简单的报错背后&#xff0c;隐藏着数据库引擎处理分组查询的精妙机制。这种注入方式…

作者头像 李华
网站建设 2026/4/21 5:02:55

bert-base-chinese功能体验:一键运行,看模型如何理解中文语义

BERT-base-chinese功能体验&#xff1a;一键运行&#xff0c;看模型如何理解中文语义 1. 引言&#xff1a;中文语义理解的基石 在自然语言处理领域&#xff0c;BERT模型的出现彻底改变了文本理解的方式。作为专门针对中文优化的BERT-base-chinese模型&#xff0c;它能够深入理…

作者头像 李华