一、MinGW的安装
相比在 Linux 平台上安装 GCC 编译环境,在 Windows 平台上安装 MinGW 是比较简单的,只需经历以下几个过程。
-
打开 https://osdn.net/projects/(点击即可进入官网),下载 MinGW 安装包。
-
下载完成后,会得到一个名为 mingw-get-setup.exe 的安装包,双击打开它,可以看到如下的对话框:
-
直接点击“Install”,进入下面的对话框:
-
读者可根据自己操作系统的实际情况,自定义 MinGW 的安装位置(例如我选择将其安装到 E 盘),然后点击“continue”,进入下面的对话框:
-
进入安装 MinGW 配置器的界面,读者耐心等待安装完成(显示 100%)即可。安装完成之后,我们会得到一个名为 “MinGW Installer Manager” 的软件,借助它,我们可以随时根据需要修改 GCC 编译器的配置。点击“continue”,会自动弹出配置界面,如下所示:
为使 GCC 同时支持编译 C 语言和 C++,需勾选图中标注的 2 项。我们知道,GCC 还支持其它编程语言,读者可借助此配置器,随时实际需要安装自己需要的编译环境。勾选完成后,在菜单栏中选择Installation -> Apply Changes,弹出如下对话框:
选择“Apply”。然后耐心等待,直至安装成功,即可关闭此界面。注意,整个安装过程中可能会提示某些组件下载失败,但没关系,后续需要时,可以通过 MinGw Installer(图 4 所示)安装界面中的 “All Packages”选项中,手动选择指定的安装包进行安装。
-
在安装完成的基础上,我们需要手动配置 PATH 环境变量。依次右击计算机(我的电脑) -> 属性 -> 高级系统设置 -> 环境变量,建议读者在当前用户的 PATH 环境变量中增加 MinGW 的安装路径,例如我将其安装到了E:\MinGW文件夹中,因此 PATH 环境变量的设置如下:
-
由此,打开命令行窗口(通过在搜索栏中执行 cmd 指令即可),输入gcc -v指令,如果输出 GCC 编译器的具体信息,则表示安装成功,例如:
MinGW的使用
通过上面的安装,我们就可以在当前 Windows 平台上编译、运行 C 或者 C++ 程序了。
这里以运行一个 C 语言程序为例(存储路径为:D:\demo.c):
#include <stdio.h>
#include <stdlib.h>
int main(){
printf("Hello, World!");
system("pause");
return 0;
}
在此基础上,在命令行窗口中执行如下指令:
C:\Users\mengma>gcc D:\demo.c -o D:\demo.exe
其会在 D 盘生成一个 demo.exe 可执行文件,找到该文件并双击,即可看到程序的执行结果:
Hello, World!
二、 安装vscode
vscode官网下载安装包直接安装即可
三、 vscode内安装C/C++ 插件
vscode内按快捷组合键Ctrl+Shift+X(或如图点击[拓展]按钮)打开拓展分页,在搜索栏输入” C “,查找到如图的第一个插件,安装并重新加载之。再推荐几个插件,包括彩虹括号和汉化。
四、重启电脑(重要)。
五、配置运行环境
打开vscode,选择或新建一个空文件夹目录打开作为项目目录。
点击“文件”按钮,再点击“新建文件夹”按钮,并重命名为”.vscode”。
在该文件夹内,在点击“新建文件”按钮,建launch.json,settings.json,tasks.json三个.json文件。如图所示。
launch.json的文件内容如下:
可以直接复制,并修改有注释的一段
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"preLaunchTask": "build",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "C:/Program Files/mingw-w64/x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0/mingw64/bin/gdb.exe", // 这里修改GDB路径为安装的mingw64的bin下的gdb.exe路径
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true,
}
]
}]
}
tasks.json的文件内容如下:
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared"
},
"windows": {
"command": "g++",
"args": [
"-ggdb",
"\"${file}\"",
"--std=c++11",
"-o",
"\"${fileDirname}\\${fileBasenameNoExtension}.exe\"",
"-finput-charset=UTF-8",//输入编译器文本编码 默认为UTF-8
"-fexec-charset=GBK"//编译器输出文本编码 自行选择
]
}
}
]
}
settings.json的文件内容如下:
用户设置为:
// Configuring tasks.json for C/C++ debugging
// author: huihut
// repo: https://gist.github.com/huihut/887d3c28db92617bd5148c20a5ff112a
// Available variables which can be used inside of strings.
// ${workspaceRoot}: the root folder of the team
// ${file}: the current opened file
// ${fileBasename}: the current opened file's basename
// ${fileDirname}: the current opened file's dirname
// ${fileExtname}: the current opened file's extension
// ${cwd}: the current working directory of the spawned process
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared"
},
"windows": {
"command": "g++",
"args": [
"-ggdb",
"\"${file}\"",
"--std=c++11",
"-o",
"\"${fileDirname}\\${fileBasenameNoExtension}.exe\""
]
}
}
],
"files.autoSave": "afterDelay",
"[c]": {
},
"files.encoding": "utf8",
"files.autoGuessEncoding": true,
"explorer.confirmDragAndDrop": false,
"workbench.colorTheme": "Visual Studio Dark",
"team.showWelcomeMessage": false
}
至此,环境配置完成。
六、运行C代码
新建helloworld.c文件,键入或粘贴C语言的helloworld代码,按F5调试运行。
#include <stdio.h>
#include <windows.h>
int main() {
printf("hello world!\n\n");
system("pause");
return 0;
}
Vscode C环境配置完成