IE盒子

搜索
查看: 130|回复: 1

vscode配置C++调试环境

[复制链接]

4

主题

11

帖子

23

积分

新手上路

Rank: 1

积分
23
发表于 2023-1-9 09:45:48 | 显示全部楼层 |阅读模式
在环境变量path中添加mingw中bin后


在vscode界面侧边栏点击调试界面,创建launch.json文件








添加配置后保存就行
下为我的添加配置后自动生成的launch文件
{
    // 使用 IntelliSense 了解相关属性。
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "输入程序名称,例如 ${workspaceFolder}/a.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "/path/to/gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}回到编好的c++文件中,点右上角小三角形旁边的下拉按钮


点调试c/c++文件,
注意:这里一定要选g++.exe选cpp.exe可能无法调试,如果选错了可以直接删除自动生成在launch文件旁边的task.json重新再来



vscode会帮我们自动生成task文件
下面是vscode自动生成的task文件(已加注解)
将注解中的两行修改后即可自动将exe文件都生成到一个文件夹中(自定义名称,没有会自动创建)

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe 生成活动文件",
            "command": "D:\\mingw-v12.2_202204\\mingw64\\bin\\g++.exe", //编译器的目录
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
                    
                    /*   
                        编译后自动生成的exe文件地址
                        可以自定义,如
                        task中
                        "${fileDirname}\\exe\\${fileBasenameNoExtension}.exe"

                            修改后在launch文件中同步修改即可
                        launch中
                        "program": "${fileDirname}\\exe\\${fileBasenameNoExtension}.exe",
                           
                    */

            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}
然后就可以开始愉快的调试了,有可能没有自动显示终端,可以在顶端菜单(查看(V))中将其调出


提示1: *  终端进程已终止,退出代码: -1。 报错是因为同时开了多个调试,关掉其他的在开即可(或简单粗暴重启vscode)

提示2:如果直接粘贴输入,最后一行没有换行符的话,最后一行是不能直接被程序读取的,看起来就像突然退出了一样,程序运行指示位置的也不见了,直接在终端中敲入一个回车即可,原因就像在终端中敲了一行命令没有按回车,或者粘贴之前在文本最后加入一个空行
回复

使用道具 举报

3

主题

9

帖子

17

积分

新手上路

Rank: 1

积分
17
发表于 2025-3-10 12:39:02 | 显示全部楼层
我只是路过,不发表意见
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表