vsCode配置C++调试环境
1、下载安装VSCode,安装mscpptools ,直接搜索c++,或者mscpptools
2、下载MinGW
安装好,一般默认安装到C:\MinGW
安装好后直接启动。
选择需要的gcc ,g++
如图:1、选择mingw32-gcc,mingw32-gcc-g++,
2、右键,mark For Installtion...
3、点击菜单栏第一个 Installation,选择apply changes,然它自动在线安装。
3、安装成功之后,配置环境变量,不多说了
4、重启vsCode,新建->新建一个文件夹,在该文件夹下新建一个 test.cpp,写一些代码:
1 #include <iostream> 2 using namespace std; 3 4 void shellInsertSort(int a[], int n, int dp){ 5 6 } 7 int main(int argc, char *args[]){ 8 cout <<"hello world!"<<endl; 9 getchar(); 10 return 0; 11 }
5、新建一个launch.json
填写配置:
1 { 2 "version": "0.2.0", 3 "configurations": [{ 4 "name": "C++ Launch (GDB)", // 配置名称,将会在启动配置的下拉菜单中显示 5 "type": "cppdbg", // 配置类型,这里只能为cppdbg 6 "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加) 7 "launchOptionType": "Local", // 调试器启动类型,这里只能为Local 8 "targetArchitecture": "x86", // 生成目标架构,一般为x86或x64,可以为x86, arm, arm64, mips, x64, amd64, x86_64 9 "program": "${file}.exe", // 将要进行调试的程序的路径 10 "miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应 11 "args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可 12 "stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false 13 "cwd": "${workspaceRoot}", // 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录 14 "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台 15 "preLaunchTask": "g++" // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc 16 }] 17 }
6、新建一个task.json,配置如下:
1 { 2 "version": "0.1.0", 3 "command": "g++", 4 "args": ["-g", "${file}", "-o", "${file}.exe"], // 编译命令参数 5 "problemMatcher": { 6 "owner": "cpp", 7 "fileLocation": ["relative", "${workspaceRoot}"], 8 "pattern": { 9 "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$", 10 "file": 1, 11 "line": 2, 12 "column": 3, 13 "severity": 4, 14 "message": 5 15 } 16 } 17 }
7、按F5调试
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
2016-12-06 JavaScript 函数声明,函数表达式,匿名函数,立即执行函数之区别
2016-12-06 JavaScript闭包
2016-12-06 AnjularJS异步编程 Promise和$q