vscode-搭建cpp环境-windows
学习自 - vscode 配置C、C++环境/编写运行C、C++
软件、插件安装
1.下载安装vscode,https://code.visualstudio.com/Download
2. 安装cpptools插件
按ctrl+p打开快速命令框,输入以下命令后等待 -
ext install cpptools
3. 安装编译、调试环境
目前windows下调试仅支持 Cygwin 和 。
安装 MinGW - http://mingw.org/ 选中几个需要的项右键Make for Installation进行标记,其中gcc和g++为c和c++编译器,
- 原文有图片参考,
或是- 搜索Windows-MinGW配置C++
都有,安装步骤
安装完成->配置环境变量->重启vscode
debug 配置launch.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": "C:/Program Files/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
}
]
}
]
}
# vscode默认的"externalConsole": false,,而我这里改为了true,改为true即在控制台内部运行,不显示黑框,但是要是不显示黑框似乎没法输入(cin或者scanf)了(作者没怎么试过,我也没试过)
** &+T+C
**,创建tasks.json
文件
随便选一个:(我选的others)【随便选,反正最后tasks.json文件要被覆盖】
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++", //这里注意一下,见下文
"command": "C:\\Program Files\\MinGW\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:\\Program Files\\MinGW\\bin"
},
"problemMatcher": [
"$gcc"
]
}
]
}
出现上面图片的问题??修改shell
-
Ctrl + Shift + p
: 调出命令输入框 - 输入
Terminal: Select Default Shell
- 选择
CMD
orPowerShell
或者在setting.json中修改
- 打开vscode 文件 > 首选项 > 设置
& + F + P
- 输入
shell.windows
, 将路径添加到设置中,如下图所示 - 修改默认的shell
====================================================================
====================================================================