准备安装包
- vscode下载地址
- MinGw下载地址第二or第四个随意随意(或许这时候已经有了更新的版本了)
MinGW的安装及配置
- 安装就是下载解压到自己想放的文件夹即可(以我的为例D:mingw64)路径最好不要有中文
- 配置环境变量
系统—>高级系统设置—>环境变量—>Path(新建,然后添加mingw的路径点击确定就完事了)
- 最后查看下mingw是否安装成功
win + r 输入cmd 命令 在窗口中输入gcc - v即可查看当前版本 (由于我安装了Qt所以显示的是之前的版本)
vscode的安装及配置
- 下载安装好之后在vscode的左侧找到Extension 搜索chinese插件直接install(如图)
- 下载c/c++插件同样进行安装(操作同上)
- 配置编译/调试环境
1.首先是配置默认文件:图中的 .vscode文件夹(可手动创建)然后分别配置三个文件 c_cpp_properties.json,launch.json,tasks.json
2.配置c_cpp_properties.json 一般来说该文件可以不做改动(即以下内容) PS:该文件不允许注释
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceRoot}"
],
"defines": [
"_DEBUG",
"UNICODE",
"__GNUC__=6",
"__cdecl=__attribute__((__cdecl__))"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"cStandard": "c11",
"cppStandard": "c++17"
}
],
"version": 4
}
由于我本机Qt的缘故,所以我要重新配置下"includePath"(以解决cout被识别为未定义标志符这个错误)添加mingw及头文件所在的路径
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceRoot}",
"D:/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
"D:\\mingw64\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\\x86_64-w64-mingw32",
"D:\\mingw64\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\backward",
"D:\\mingw64\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include",
"D:\\mingw64\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\tr1",
"D:\\mingw64\\x86_64-w64-mingw32\\include"
],
"defines": [
"_DEBUG",
"UNICODE",
"__GNUC__=6",
"__cdecl=__attribute__((__cdecl__))"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"cStandard": "c11",
"cppStandard": "c++17"
}
],
"version": 4
}
3.配置launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true, //若参数为true,输出结果就会在cmd窗口中显示,若为false,输入输出则显示在终端
"MIMode": "gdb",
"miDebuggerPath": "D:\\mingw64\\bin\\gdb.exe", //只需将本行的路经改为自己mingw所在的路经,以我的为例,将斜线改为双斜线
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++.exe build active file"
}
]
}
4.最后是tasks.json
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++.exe build active file",
"command": "D:\\mingw64\\bin\\g++.exe", //将本行的路经改为自己mingw所在的路经,以我的为例,将斜线改为双斜线
"args": ["-g", "${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe"],
"options": {
"cwd": "D:\\mingw64\\bin" //将本行的路经改为自己mingw所在的路经,只需要到bin目录即可
},
"problemMatcher": ["$gcc"],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
- 至此vscode基本配置完成(如图)
注:VSCODE文件夹下的工程都得用到 .vscode 里面的配置文件故将该文件夹置顶避免重复配置
遇到的一些错误及解决方案
问题:未定义的标志符 “cout”
解决:在c_cpp_properties.json配置文件的"includePath"添加上mingw的一些解析路径
问题:“找不到任务g++.exe build active file”
解决方案:需要在 .vscode 文件中配置 tasks.json 中的 label 字段与 launch.json 中的 preLaunchTask 字段一致.