下载安装
1.Visual Studio Code
VScode官网下载
- 注:下载时各平台均有两个版本 Stable和insiders ,一般选择Stable 稳定版
2.c/c++编译器
编译器选用GNU 的 C/C++ 编译器,需要借助 MinGW下载安装,或者安装codeblocks,之后电脑便有了mingw编译器了。
法一:借助codeblocks
- codeblocks安装 :点击下载地址 下载
codeblocks-20.03mingw-setup.exe
,中间20.03为版本号,下载最新版即可。 - 下载安装完电脑便有了mingw编译器了,找到codeblocks安装目录,里面的MinGW就是安装的编译器了,将里面的bin文件夹加入环境变量路径
法二:用MinGW下载安装
MinGW下载地址,下载安装即可
- 注:不管用哪一种方法,记得将
MinGW\bin
文件目录配置到系统环境变量中,我的是C:\Program Files\mingw64\bin
,用cmd命令提示符输入: gcc -v检测是否安装成功
配置VSCode
先在在vscode里面下载c/c++官方插件
对支持多cpp文件的编译运行,此处修改了task.josn的相关参数,可以编译运行多文件c++项目,但大项目运行推荐使用cmake
配置文件主要为launch,jocn和task.josn两个文件,分别如下
task.josn文件,复制后记得修改"command"
"cwd"
{
//个人理解:task.josn在launch.josn前面执行,负责编译
//而launch.josn负责执行exe文件,且调试设置
"tasks": [
{
"type": "shell", //任务执行的是shell命令
"label": "g++.exe build active file", //这个名字和launch.josn 中的 preLaunchTask 必须一样
"command": "C:\\Program Files\\mingw64\\bin\\g++.exe", //命令是g++,也可以直接写g++
"args": [
"-g",
//多文件编译问题 "${file}"只能编译一个.cpp
//"${file}", //指当前打开的文件,用于单文件.cpp的编译链接
//"${workspaceFolder}\\*.cpp", //表示当前workspace文件夹路径
"${fileDirname}\\*.cpp" , //当前打开文件的目录名下的cpp文件。用于简单的多cpp文件时编译链接,大项目不推荐
"-o", //对象名,不进行编译优化
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"-std=c++17", //使用c++17标准编译
"-finput-charset=UTF-8", //输入编译器默认文本编码 默认为utf-8
"-fexec-charset=GB18030", //输出exe文件编码
],
// 所以以上部分,就是在shell中执行(假设文件名为main.cpp) 等同在shell中执行 g++ main.cpp -o filename.exe
"options": {
"cwd": "C:\\Program Files\\mingw64\\bin"
}
}
],
"version": "2.0.0"
}
launch.josn文件,复制后修改"miDebuggerPath"
{
/*launch.josn功能
1.指定语言环境
2.指定调试类型 attach 和launch
3.其他配置
*/
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe", //当前调试配置的名称,可以自定义名字的,在运行配置的下拉菜单显示
"type": "cppdbg", //调试的类型 指定编程环境 Windows表示器使用cppvsdbg;GDB和LLDB使用cppdbg。该值自动生成
"request": "launch", //请求配置类型,vscode 只有两种launch(启动) 和attach(附加)
//launch: vs code 负责启动程序并给程序搭配一个调试器 用于日常开发
//attach: 为一个已经在运行且暂不支持调试的程序(通常是正在运行的web程序)加一个调试器。用于远程调试or本地开发的特殊情况
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe", //需要运行/调试的是当前打开文件的目录中,名字和当前文件相同,但扩展名为exe的程序
"args": [], //miDebugger的路径,注意这里要与MinGw的路径对应
"stopAtEntry": false, //设为true时程序将暂停在程序入口处(即停止main函数开始),一般设置为false
"cwd": "${workspaceFolder}", //调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录 (设置调试器启动的应用程序的工作目录。)
"environment": [], //针对调试的程序,要添加到环境中的环境变量
"externalConsole": true, //调试时是否显示外置控制台窗口(大黑框),一般设置为true显示控制台
"internalConsoleOptions": "neverOpen", //可以没有
"MIMode": "gdb", // VSCode要使用的调试工具or指示VS代码将连接到的调试器
"miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应 当未指定时,它将搜索操作系统的PATH变量来寻找调试器
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++.exe build active file" // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc 这个名字一定要跟tasks.json中的任务名字大小写一致
}
]
}