vscode调试c++配置tasks.json和launch.json文件

环境:
minguw
vscode

在vscode中配置文件,用mingw中的gcc和gdb调试c++程序

  1. 首先在项目根目录下创建.vscode文件夹

在这里插入图片描述
2. 新建一个task.json文件
建立一个shell任务,拼接命令完成.cpp文件编译,生成.exe文件

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "debug gdb",  //任务标签,用于标识这个任务
      "type": "shell",  //任务类型 process表示作为进程进程,shell表示输入命令进行 
      "command": "g++",//要执行的命令,这里是使用g++编译程序
      "args": [//命令的一些参数
        "-g",//
        "${file}",//当前文件名
        "-o",//不进行编译优化
        "${fileBasenameNoExtension}.exe"//当前不包括扩展名的文件名
      ],
      //最后拼接起来的shell命令举例 g++ -g c:\Users\muzit\Desktop\lock\LR1.cpp -o LR1.exe
      "problemMatcher": [
        "$gcc"
      ]
    }
  ]
}

label: 任务标签,用于标识
${fileBasenameNoExtension}: 当前文件的除去拓展名之后的文件名
这个配置文件的作用就是,拼接出shell命令,然后帮你执行编译任务,模拟的命令如下
在这里插入图片描述
tasks.json在一些不需要编译的环境里是必要的,但是对于python不需要编译的语言不需要这个文件也可以调试
3. 新建一个launch.json文件

{
  "version": "2.0.0",
  "configurations": [
    {
      "name": "gdb调试", // 配置名称,将会在启动配置的下拉菜单中显示 
      "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:\\MinGW\\bin\\gdb.exe",
      // miDebugger的路径,注意这里要与自己的MinGw的路径对应 
      "preLaunchTask": "debug gdb", // 调试会话开始前执行的任务,与tasks.json定义的任务标签相同
    }
  ]
}

这里的重点是:
preLaunchTask与tasks.json里面label相对应,因为每一次修改文件后都要重新编译,这个标签说明是在执行完debug gdb任务(重新编译)后再进行调试工作
program标签指定即将调试的exe程序,${workspaceRoot}/${fileBasenameNoExtension}.exe拼接的文件路径
cwd标签指当前工作目录
MIMode:MIDebugEngine连接到的控制台程序,这里是gdb
miDebuggerPath: 调试程序路径,这里要使用\\转义

  • 13
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
对于C/C++项目的任务(tasks)和调试launch配置,你可以使用Visual Studio Code的tasks.jsonlaunch.json文件进行配置。 首先是配置tasks.json文件,用于定义构建和运行任务。你可以按下面的步骤进行配置: 1. 在Visual Studio Code中打开你的C/C++项目。 2. 在菜单栏中选择“View” -> “Command Palette”(或使用快捷键Ctrl+Shift+P)。 3. 在命令面板中输入“Tasks: Configure Task”,然后选择“Tasks: Configure Task”命令。 4. 选择“Create tasks.json file from template”选项。 5. 从模板列表中选择“Others”(其他)。 6. 选择适合你的构建工具的模板,比如"G++ build and debug active file"(用于G++编译器)。 7. tasks.json文件将在.vscode目录下创建。你可以根据自己的需求修改该文件。 下面是一个tasks.json的示例: ```json { "version": "2.0.0", "tasks": [ { "type": "shell", "label": "build", "command": "g++", "args": ["${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}"] }, { "type": "shell", "label": "run", "command": "${fileDirname}/${fileBasenameNoExtension}" } ] } ``` 上述示例定义了两个任务:build(构建)和run(运行)。build任务使用g++编译器将当前文件编译为可执行文件,而run任务则直接运行可执行文件。 接下来是配置launch.json文件,用于定义调试任务。你可以按照以下步骤进行配置: 1. 在Visual Studio Code中打开你的C/C++项目。 2. 在菜单栏中选择“Debug” -> “Add Configuration”。 3. 选择“C++ (GDB/LLDB)”配置类型。 4. launch.json文件将在.vscode目录下创建。你可以根据自己的需求修改该文件。 下面是一个launch.json的示例: ```json { "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/${fileBasenameNoExtension}", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "/usr/bin/gdb" } ] } ``` 上述示例定义了一个名为“(gdb) Launch”的调试配置,使用gdb作为调试器。"program"字段指定了要调试的可执行文件路径。 你可以根据自己的需要修改和扩展这些配置。更多关于tasks.jsonlaunch.json配置选项,请参考Visual Studio Code的文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值