vscode debug c++代码

需要提前写好CMakeLists.txt

在tasks.json中写好编译的步骤,即tasks,如cmake ... 和make -j

在lauch.json中配置可执行文件的路径和需要执行tasks中的哪一个任务

具体步骤:

1.写好c++代码和CMakeLists.txt

2.配置tasks.json

终端-->配置任务-->g++生成活动文件

此时会在.vscode中生成tasks.json文件

需要修改tasks.json文件。一般的编译步骤就是cmake ... 和make -j,对应的就是tasks.json中的两个任务。

json 复制代码
{
	"version": "2.0.0",
	"tasks": 
	[
        {
            "type": "shell",    // cmake属于shell命令
            "label": "cmake",   // 这条任务的名字
            "command": "cmake", // 对应的shell命令
            "args": [
                ".."             // cmake命令对应的参数,一般就是..
            ],
            "options": {
                "cwd": "${workspaceFolder}/build"  // 需要在哪个路径下执行这条任务
            }
        },
        {
            "type": "shell",  // make也属于shell命令
            "label": "make",  // 这条任务的名字
            "command": "make", // 对应的shell命令
            "args": [
                "-j"            // make命令对应的参数,一般就是-j
            ],
            "options": {
                "cwd": "${workspaceFolder}/build"  // 需要在哪个路径下执行这条任务
            },
            "dependsOn": [
                "cmake"                      // make命令需要在cmake执行完成后执行,这个cmake就是上面那条任务的名字
            ]
        },
	]
}

3.配置lanuch.json

运行-->添加配置-->C++

此时会生成launch.json文件

再执行一次运行-->添加配置

或者直接粘贴下面的内容

json 复制代码
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/${fileBasenameNoExtension}",  //编译生成的可执行文件
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}/build",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "make"    // 执行tasks中的哪个任务
        }

    ]
}

4.debug程序

到指定的main文件按下F5,即可以调试程序

相关推荐
Stanford_11063 小时前
如何利用Python进行数据分析与可视化的具体操作指南
开发语言·c++·python·微信小程序·微信公众平台·twitter·微信开放平台
千里马-horse4 小时前
Async++ 源码分析8--partitioner.h
开发语言·c++·async++·partitioner
Lucis__5 小时前
再探类&对象——C++入门进阶
开发语言·c++
北京不会遇到西雅图6 小时前
【SLAM】【后端优化】不同优化方法对比
c++·机器人
jndingxin6 小时前
c++多线程(6)------ 条件变量
开发语言·c++
程序员莫小特7 小时前
老题新解|大整数加法
数据结构·c++·算法
洲覆8 小时前
C++ 模板、泛型与 auto 关键字
开发语言·数据结构·c++
蜀中廖化8 小时前
python VSCode中报错 E501:line too long (81 > 79 characters)
开发语言·vscode·python
shimly1234569 小时前
vscode 指定连接其它版本的 linux
ide·vscode·编辑器
千里马-horse9 小时前
Async++ 源码分析7--parallel_reduce.h
开发语言·c++·async++·parallel_reduce