写在前面:
可以说对Sublime Text3是真爱了,我最爱的代码编辑器,没有之一。CSDN上不少前辈都写过如何在Sublime Text3中编译调试运行代码,根据他们的博客,我成功设置好了Python在Sublime Text下的编译运行,但是C/C++的我找到了十多篇博客才设置成功(因为我发现里面就两篇博客真正实用)。所以我想总结一下,自己写一篇关于在Sublime Text3中编译运行C/C++的博客。
参考博客:
①怎么让sublime text3可以运行c/c++ (来源:constantine___)。
我发现我按①设置好了后,不能读取cin和scanf的输入。
②sublime text 3+minGW 无法读取cin,使用命令行cmd成功运行(来源作者:食野之苹)。
我发现我按②设置好了后,程序出现了中文乱码。
Sublime Text的特点:
①Sublime Text 是一款跨平台代码编辑器,在Linux、OS X和Windows下均可使用。
②Sublime Text占用内存小、运行速度快,界面还十分简洁美观。
③Sublime Text可以多行编辑、多重选择、多屏显示,提高编程效率。
④Sublime Text 是可自由扩展的,它包含大量实用插件,我们可以通过安装自己领域的插件来成倍提高工作效率。
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}", "&&", "cmd", "/c", "${file_path}/${file_base_name}"]
},
{
"name": "RunInCommand",
"cmd": ["cmd", "/c", "g++", "${file}", "-o", "${file_path}/${file_base_name}", "&&", "start", "cmd", "/c", "${file_path}/${file_base_name} & pause"]
}
]
}
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 Text3添加快捷键:
如何像Codeblocks一样按下F9后即可对代码进行编译运行呢?在菜单栏选中Preferences,然后再选中Key Bindings。
在新出现的界面中输入一行内容(我是把F8设置为快捷键的):
{ "keys": ["f8"], "command": "build", "args": {"variant": "RunInCommand"} }
输入完成后按下Ctrl+s保存即可。