Sublime Text3 C/C++一键调试运行代码

2024-03-20 14:12

本文主要是介绍Sublime Text3 C/C++一键调试运行代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

minGW的系统环境配置:

使用的C/C++编译器是minGW,点此进入官网链接,下载后需要在线安装,安装后需要将安装目录下的bin目录所在路径加入path环境变量。本菜鸡的电脑里安装了CodeBlocks,在CodeBlocks的安装目录下有MinGW,所以可以直接将其bin目录所在路径D:\CodeBlocks\MinGW\bin复制。

用鼠标右键点击此电脑,选中属性,然后选择高级系统设置,再选择环境变量。

 

在环境变量中找到Path系统变量,选中后点击编辑。

 

选择新建,然后Ctrl+v把复制的MinGW的bin路径粘贴,再一直点确定就行了。

 

用Win+R来运行cmd,输入g++或g++ -v,出现以下界面说明MinGW配置成功。

 

在Sublime Text3内部编译运行代码: 

编辑一段代码输出经典语句"Hello,world."和“你好,世界。”  Ctrl+Shift+b选中C++ Single File -Run即可在ST3内部对这段代码进行编译运行。程序运行结束后显示[Finished in 时间]。

如果代码有bug的话,Sublime Text3也可以进行报错。

 

这一切看上去都非常让人激动。然而!问题来了,用以上方法并不能读取cin和scanf。要是在"请输入一个数:"后输入一个数字,Sublime Text3不会有任何反应,并且在你重新Ctrl+b编译运行的时候会报错,因为该代码已经在编译运行了。

 

Sublime Text3调用cmd编译运行:

如何解决Sublime Text3无法cin、scanf的问题呢? 

在菜单栏选中Tools,然后选择Build System,再选择New Build System...,在新打开的文件中添加以下内容:

{"cmd": ["g++", "${file}", "-fexec-charset=gbk", "-o", "${file_path}/${file_base_name}"],"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$","working_dir": "${file_path}","selector": "source.c, source.c++","variants":[{"name": "Run","cmd": ["cmd", "/c", "g++", "${file}", "-o", "${file_path}/${file_base_name}", "&&", "start", "cmd", "/c", "${file_path}/${file_base_name} & pause"]}]
}

Linux环境下要这样配置

{"cmd" : ["g++", "$file_name", "-o", "${file_base_name}", "-lm", "-Wall"],"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$","selector" : "source.c, source.c++","shell":false,"working_dir" : "$file_path","variants":[{"name": "Run","cmd": ["gnome-terminal", "-e", "bash -c \"g++ '${file}' -o '${file_path}/${file_base_name}' -lm -Wall && '${file_path}/${file_base_name}' ; read -p '\nPress any key to continue...'\""]}]
}

Ctrl+s保存在这个默认路径下,重命名为C.sublime-build。

 

然后返回刚刚那段代码,Ctrl+Shift+b选择C -Run,编译后可以调用cmd运行,界面如下:

 

如果出现乱码,设置文件编码为GBK格式后再输入文字,程序运行时中文就不再是乱码了。Ctrl+Shift+p打开命令框,输入"install",选中第一个敲回车。 

你会发现命令框消失了,过一会儿会出现一个新的命令框,在新的命令框中输入"ConvertToUTF8"敲下回车即可进行安装。

 

安装ConvertToUTF8成功后在菜单栏选中File,然后选中Reload encoding with,选择Chinese Simplified(GBK)。然后重新Ctrl+b调试运行。

如果没有在Sublime Text中安装Package Control的话,这里有个安装方法:

通过https://sublime.wbond.net/Package%20Control.sublime-package下载packageControl文件。下载完成后,打开sublime text3,选择菜单Preferences->Browse Packages, 打开安装目录,此时会进入到一个叫做Packages的目录下,点击进入上一层目录Sublime Text3,在此目录下有一个文件夹叫做Installed Packages,把刚才下载的文件放到这里就可以了。然后重启sublime text3,观察Preferences菜单最下边是否有Package Settings 和Package Control两个选项,如果有,则代表安装成功了。此时使用快捷键Ctrl+Shift+P,输入install,选择install package,接下来从里面搜索插件的名字即可。

Sublime Text3添加快捷键: 

如何像Codeblocks一样按下F8后即可对代码进行编译运行呢?在菜单栏选中Preferences,然后再选中Key Bindings。

在新出现的界面中输入一行内容(我是把F8设置为快捷键的):

{ "keys": ["f8"], "command": "build", "args": {"variant": "Run"} } 

输入完成后按下Ctrl+s保存即可。 

 

对了,还没有破解呢(原谅我的贫穷,希望有能力的兄弟还是购买正版),破解请戳链接sublime text3 破解方法,亲测有效

打开sublime text ,选择help-->enter license,将下面的内容复制到输入框中:

----- BEGIN LICENSE -----
sgbteam
Single User License
EA7E-1153259
8891CBB9 F1513E4F 1A3405C1 A865D53F
115F202E 7B91AB2D 0D2A40ED 352B269B
76E84F0B CD69BFC7 59F2DFEF E267328F
215652A3 E88F9D8F 4C38E3BA 5B2DAAE4
969624E7 DC9CD4D5 717FB40C 1B9738CF
20B3C4F1 E917B5B3 87C38D9C ACCE7DD8
5F7EF854 86B9743C FADC04AA FB0DA5C0
F913BE58 42FEA319 F954EFDD AE881E0B
------ END LICENSE ------

 

 

 

 

 

这篇关于Sublime Text3 C/C++一键调试运行代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/829717

相关文章

使用Python实现全能手机虚拟键盘的示例代码

《使用Python实现全能手机虚拟键盘的示例代码》在数字化办公时代,你是否遇到过这样的场景:会议室投影电脑突然键盘失灵、躺在沙发上想远程控制书房电脑、或者需要给长辈远程协助操作?今天我要分享的Pyth... 目录一、项目概述:不止于键盘的远程控制方案1.1 创新价值1.2 技术栈全景二、需求实现步骤一、需求

Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

《Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码》:本文主要介绍Java中日期时间转换的多种方法,包括将Date转换为LocalD... 目录一、Date转LocalDateTime二、Date转LocalDate三、LocalDateTim

C++ vector的常见用法超详细讲解

《C++vector的常见用法超详细讲解》:本文主要介绍C++vector的常见用法,包括C++中vector容器的定义、初始化方法、访问元素、常用函数及其时间复杂度,通过代码介绍的非常详细,... 目录1、vector的定义2、vector常用初始化方法1、使编程用花括号直接赋值2、使用圆括号赋值3、ve

如何高效移除C++关联容器中的元素

《如何高效移除C++关联容器中的元素》关联容器和顺序容器有着很大不同,关联容器中的元素是按照关键字来保存和访问的,而顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的,本文介绍了如何高效移除C+... 目录一、简介二、移除给定位置的元素三、移除与特定键值等价的元素四、移除满足特android定条件的元

jupyter代码块没有运行图标的解决方案

《jupyter代码块没有运行图标的解决方案》:本文主要介绍jupyter代码块没有运行图标的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录jupyter代码块没有运行图标的解决1.找到Jupyter notebook的系统配置文件2.这时候一般会搜索到

Python获取C++中返回的char*字段的两种思路

《Python获取C++中返回的char*字段的两种思路》有时候需要获取C++函数中返回来的不定长的char*字符串,本文小编为大家找到了两种解决问题的思路,感兴趣的小伙伴可以跟随小编一起学习一下... 有时候需要获取C++函数中返回来的不定长的char*字符串,目前我找到两种解决问题的思路,具体实现如下:

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

使用Python自建轻量级的HTTP调试工具

《使用Python自建轻量级的HTTP调试工具》这篇文章主要为大家详细介绍了如何使用Python自建一个轻量级的HTTP调试工具,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下... 目录一、为什么需要自建工具二、核心功能设计三、技术选型四、分步实现五、进阶优化技巧六、使用示例七、性能对比八、扩展方向建

Java调用C++动态库超详细步骤讲解(附源码)

《Java调用C++动态库超详细步骤讲解(附源码)》C语言因其高效和接近硬件的特性,时常会被用在性能要求较高或者需要直接操作硬件的场合,:本文主要介绍Java调用C++动态库的相关资料,文中通过代... 目录一、直接调用C++库第一步:动态库生成(vs2017+qt5.12.10)第二步:Java调用C++