VSCODE如何配置C/C++环境,以及解决中文乱码

在Visual Studio Code (vscode) 配置C、C++环境的基础上,增加了解决中文乱码的问题。
总体流程:
1.下载安装vscode
2.安装插件
3.安装编译、调试环境
4.配置系统环境变量path
5.修改vscode调试配置文件(及解决中文乱码!!)
6.其他
7.Linux版本配置(简要)


1.下载安装vscode

官网即可


2.插件安装

VSCODE如何配置C/C++环境,以及解决中文乱码_第1张图片


3.安装编译、调试环境

若是电脑上原来装着codeblocks,Dev C++等可以跳过这步。目前windows下调试仅支持 Cygwin 和 MinGW。 这里使用的是MinGW。下面是MinGW的安装配置过程:
http://mingw.org/
进入官网点击右侧 Download Installer下载安装器
打开安装器点击install准备安装:
VSCODE如何配置C/C++环境,以及解决中文乱码_第2张图片
选择一个安装目录,默认为C:\MinGW这里选择的是D:\MinGW
点击Continue开始安装,安装过程需联网,若安装时提示error则需安装
安装过程很快,结束后Continue按钮恢复为可用状态,点击完成安装。
运行MinGW安装管理器。
主要是安装gdb,gcc和g++
VSCODE如何配置C/C++环境,以及解决中文乱码_第3张图片

注意这里gdb必选,否则无法调试

VSCODE如何配置C/C++环境,以及解决中文乱码_第4张图片
选中几个需要的项右键Make for Installation进行标记,其中gcc和g++为c和c++编译器
选择完全部想要安装的项后点击左上角Installation菜单下的Apply Changes应用修改,过程需联网,中间出现error可先继续,若最后失败则需更新,建议。

更新:单独装MinGW ,我最早是这么搞的,要是发现不可以(无法下载或者很怀疑自己MinGW没安装好等),可以试试codeblocks或者Dev-cpp等等,这些IDE自带编译器,还是看这篇文章 里面有使用codeblocks自带的MinGW的细节,当然要是可以就继续。


4.配置系统环境变量

然后配置系统环境变量path,这一步为必须
在 我的电脑 上右键 属性:
然后按照下面步骤做即可,注意最后新建的项要与之前MinGW安装位置相对应
VSCODE如何配置C/C++环境,以及解决中文乱码_第5张图片


5.修改vscode调试配置文件(及解决中文乱码!!)

打开文件夹后,新建test.cpp(随便建,或者main.cpp)进行输入代码测试:
VSCODE如何配置C/C++环境,以及解决中文乱码_第6张图片

如图示进入调试界面选择C++:
VSCODE如何配置C/C++环境,以及解决中文乱码_第7张图片

然后会在工作目录下的生成一个launch.json的启动配置文件:

VSCODE如何配置C/C++环境,以及解决中文乱码_第8张图片

使用下面代码替换该文件:(只是在vsc自己产生的json文件加了一些行)

launch.json中有很多属性可以设置, 通过智能提示查看有那些属性可以设置, 如果要查看属性的具体含义, 可以把鼠标悬停在属性上面, 会属性的使用说明.

{  
    "version": "0.2.0",  
    "configurations": [  
        {  
            "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示  
            "type": "cppdbg",       // 配置类型,这里只能为cppdbg  
            "request": "launch",    // 请求配置类型,可以为launch(启动)或attach(附加)  
            "program": "${workspaceRoot}/${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径  
            "args": [],             // 程序调试时传递给程序的命令行参数,一般设为空即可  
            "stopAtEntry": false,   // 设为true时程序将暂停在程序入口处,一般设置为false  
            "cwd": "${workspaceRoot}", // 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录  
            "environment": [],  
            "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台  
            "MIMode": "gdb",  
            "miDebuggerPath": "D:\\MinGW\\bin\\gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应  
            "preLaunchTask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc  
            "setupCommands": [  
                {   
		    "description": "Enable pretty-printing for gdb",  
                    "text": "-enable-pretty-printing",  
                    "ignoreFailures": true  
                }  
            ]  
        }  
    ]  
}

注意miDebuggerPath要与MinGw的路径对应

注意:miDebuggerPath是\,与直接粘贴过来的路径不一样,需要加一个”\”(冒号后面的两个反斜杠“\”),或者使用一个“/”

替换后保存,然后切换至test.cpp,按F5进行调试,此时会弹出一个信息框要求你配置任务运行程序,点击它~
在这里插入图片描述

【注意】,上面的那个目前的cpp插件似乎没有了,若是直接按F5会出现下面这个图,不清楚评论区童鞋说的是不是这个?

VSCODE如何配置C/C++环境,以及解决中文乱码_第9张图片

请点击第二个“配置任务”,然后出现这个:点就行了~

VSCODE如何配置C/C++环境,以及解决中文乱码_第10张图片

之后出现:VSCODE如何配置C/C++环境,以及解决中文乱码_第11张图片

在这里随便选一个:(我选的others)【随便选,反正最后tasks.json文件要被覆盖】【下面的图是更新之前的图】
VSCODE如何配置C/C++环境,以及解决中文乱码_第12张图片

然后用下面代码替换:【更新:原来的"version": "0.2.0"似乎会有下划线报错,那就按照vscode说的改为2.0.0好了,下面的是最新的复制即可。】实际上,下面的代码我是增加了引入head.h头文件的格式

{
    "version": "2.0.0",
    "command": "g++",
    "args": ["-g","${file}","-include","${workspaceRoot}\\.vscode\\head.h","-o","${fileBasenameNoExtension}.exe"],    // 编译命令参数。修改的是这一行,添加了-include命令,预编译头文件
    "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceRoot}"],
        "pattern": {
            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
        }
    }
}

重要:

1.新建head.h头文件:在”.vscode”文件夹下新建head.h头文件,并填下以下代码

#include 
static void before(void) __attribute__((constructor));
static void after(void) __attribute__((destructor));
static void middle(void);
static void before()
{
    system("chcp 65001"); //切换字符集
    system("cls");
}
static void after()
{
    system("echo.");
    system("pause");
}

2.修改tasks.json文件

{
    "version": "2.0.0",
    "command": "g++",
    "args": ["-g","${file}","-include","${workspaceRoot}\\.vscode\\head.h","-o","${fileBasenameNoExtension}.exe"],    // 编译命令参数,修改的是这一行,添加了-include命令,预编译头文件
    "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceRoot}"],
        "pattern": {
            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
        }
    }
}

启动一下,F5调试即可

你可能感兴趣的:(VSCODE)