Sublime text 3中C++环境配置及命令行运行窗口创建

本文主要是贴一些有关于sublime text 3 中C与C++编译环境的问题

我们知道,目前C/C++流行的编译器是g++,gcc,然而在我们使用sublime text来编写 C/C++程序的时候只能在sublime自带的默认的C++ single file的building system中运行,但是却无法用户自己输入,比如scanf语句,cin语句。
这里写图片描述

所以下面分享一下我自己的方法,来进行C++/C编译环境设置以及创建我们习惯的那种cmd运行窗口的模式。

首先我们知道gcc/g++在我们电脑的cmd里面是可以编译我们的源程序的:

具体的格式为:


gcc 源文件名 -o 可执行文件名 //C语言

gcc test.c -o test


g++ 源文件名 -o 可执行文件名 //C++语言

g++ test.c -o test


所以我们同样可以在sublime中building new system来创建我们的C/C++编译系统

当然在这之前需要确保自己电脑里面已经安装MinGW,这个问题自行解决。博主自己是将自己以前安装dev C++ 时候的的MinGW的路径设置成环境变量的,效果是一样滴!


1)C语言:
sublime text下
i. Tool–>build system –> New building System
ii. 在打开的界面中将默认那几行删除
iii. 拷贝下面的代码粘贴保存为MyC.sublime.build

{
    "working_dir": "$file_path",
    "cmd": "gcc -Wall \"$file_name\" -o \"$file_base_name\"",
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector": "source.c",

    "variants": 
    [
        {   
        "name": "Run",
            "shell_cmd": "gcc -Wall \"$file\" -o \"$file_base_name\" && start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""
        }
    ]
}

就可以啦!


2)同样的C++语言
sublime text下
i. Tool–>build system –> New building System
ii. 在打开的界面中将默认那几行删除
iii. 拷贝下面的代码粘贴保存为MyC++.sublime.build

{
    "encoding": "utf-8",
    "working_dir": "$file_path",
    "shell_cmd": "g++ -Wall -std=c++11 \"$file_name\" -o \"$file_base_name\"",
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector": "source.c++",

    "variants": 
    [
        {   
        "name": "Run",
            "shell_cmd": "g++ -Wall -std=c++11  \"$file\" -o \"$file_base_name\" && start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""
        }
    ]
}

上面两个配置文件中,
“encoding”代表字符集
“working_dir”代表源程序路径
“shell_cmd”代表我们编译器编译的指令格式,就是我们的g++ 源文件 -o 指定文件
“selector”就是我们的源程序的语言
这里的-std=c++11是指定以C++11语法编译,当然可以不加


保存之后,下面以C++为例,首先我们Tool –> Build System中选择我们的MyC++.sublime.build
这里写图片描述


写个简单的程序:
这里写图片描述

Ctrl+shift+B选择MyC++进行编译,再选择MyC++ run运行
这里写图片描述
此时自动调出我们的cmd运行框,完成!
这里写图片描述


接下来当我们在源程序中输入中文是再运行时候会发现出现了乱码
这里写图片描述
这里写图片描述

原因就是我们的cmd字符集与我们源程序的字符集不同,源程序是utf-8
打开我们的cmd输入chcp命令可以查看当前字符集,默认是936

所以我们可以在我们的配置文件中修改,使其支持GBK格式
具体操作就是在配置文件中”shell_cmd”加入-fexec-charset=GBK的语句

{
    "encoding": "utf-8",
    "working_dir": "$file_path",
    "shell_cmd": "g++ -Wall -std=c++11 -fexec-charset=GBK \"$file_name\" -o \"$file_base_name\"",
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector": "source.c++",

    "variants": 
    [
        {   
        "name": "Run",
            "shell_cmd": "g++ -Wall -std=c++11 -fexec-charset=GBK \"$file\" -o \"$file_base_name\" && start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""
        }
    ]
}

保存


此时在编译运行我们的代码:
这里写图片描述
perfect到这里我们就可以用sublime这个性感的编辑器来书写运行我们的C++代码啦,当然C语言也一样!

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页