vscode配置C/C++调试环境

1. Ctrl+Shift+P,输入 tasks,选择"Tasks:Configure Default Build Task",选择C/C++,这会生成tasks.json,如图:

 如下是生成的task.json:

{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "cppbuild",
			"label": "C/C++: gcc 生成活动文件",
			"command": "/usr/bin/gcc",
			"args": [
				"-fdiagnostics-color=always",
				"-g",
				"${file}",
				"-o",
				"${fileDirname}/${fileBasenameNoExtension}"
			],
			"options": {
				"cwd": "${fileDirname}"
			},
			"problemMatcher": [
				"$gcc"
			],
			"group": {
				"kind": "build",
				"isDefault": true
			},
			"detail": "编译器: /usr/bin/gcc"
		}
	]
}

修改其中参数"args"的值:删掉原来的"${file}",并将工程下的c文件添加进去,即"${fileDirname}/*.c"(或单个文件添加也行,笔者因为工程的所有的c文件都在一个路径下,所以用的*.c),如下:

{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "cppbuild",
			"label": "C/C++: gcc 生成活动文件",
			"command": "/usr/bin/gcc",
			"args": [
				"-fdiagnostics-color=always",
				"-g",
				"${fileDirname}/*.c",
				"-o",
				"${fileDirname}/${fileBasenameNoExtension}"
			],
			"options": {
				"cwd": "${fileDirname}"
			},
			"problemMatcher": [
				"$gcc"
			],
			"group": {
				"kind": "build",
				"isDefault": true
			},
			"detail": "编译器: /usr/bin/gcc"
		}
	]
}

2. 在debug按钮(即左侧的那个虫子按钮)下,点击创建launch.json,选择配置中的C/C++: gdb,如下图:

 

这会自动创建出一个launch.json文件,如下:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": []
}

然后,做如下图的操作:

 

这时,launch.json如下:

{
    // 使用 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
                }
            ]
        }
    ]
}

然后,修改参数"program"的值为task.json中参数"argus"值里的输出,即-o后的部分,修改后如下:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/${fileBasenameNoExtension}",
            "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
                }
            ]
        }
    ]
}

然后,可以自己手工添加配置参数"preLaunchTask",该参数的值与task.json中的"label参数"的值保持一致,以便使用OS自带的终端(需要把参数"externalConsole"的值设置为true),这时,launch.json如下:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "preLaunchTask": "C/C++: gcc 生成活动文件",
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/${fileBasenameNoExtension}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": true,
            "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
                }
            ]
        }
    ]
}

3. Ctrl+Shift+P, 输入C/C++, 选择"C/C++: Edit Configurations(JSON)", 生成一个c_cpp_properties.json, 如下:

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "c17",
            "cppStandard": "gnu++14",
            "intelliSenseMode": "linux-gcc-x64"
        }
    ],
    "version": 4
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
您好!要在VSCode配置C/C++调试环境,您可以按照以下步骤进行操作: 1. 首先,安装Visual Studio Code和C/C++扩展。您可以在VSCode的扩展商店中搜索并安装"C/C++"扩展,或者直接在扩展面板中搜索"C/C++"。 2. 安装完成后,打开您的C/C++项目文件夹。如果没有现有的项目,可以创建一个新的文件夹并打开。 3. 在项目文件夹中创建一个名为`.vscode`的文件夹(如果不存在),然后在该文件夹中创建一个名为`launch.json`的文件。 4. 在`launch.json`文件中添加以下配置: ```json { "version": "0.2.0", "configurations": [ { "name": "C/C++ Debug", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/your_program_name.exe", // 替换成您的程序名称 "args": [], // 可选,如果您的程序需要命令行参数,请在这里添加 "windows": { "MIMode": "gdb", "miDebuggerPath": "gdb.exe" // 替换成您的GDB路径,如果已经配置环境变量可以省略此项 }, "linux": { "MIMode": "gdb", "miDebuggerPath": "/usr/bin/gdb" // 替换成您的GDB路径 }, "osx": { "MIMode": "lldb" }, "cwd": "${workspaceFolder}", "preLaunchTask": "build" // 如果您使用的是构建任务,请修改为对应的任务名称;如果不需要构建任务,请删除此项 } ] } ``` 5. 如果您的代码需要编译,请在项目文件夹中创建一个名为`tasks.json`的文件,并添加相应的构建任务配置。这样,您就可以在调试之前自动构建您的代码。 6. 现在,您可以在VSCode调试视图中选择"C/C++ Debug"配置,并点击播放按钮以启动调试。 请注意,上述配置中的路径和命令可能需要根据您的实际情况进行修改。确保GDB(或LLDB)已正确安装,并且路径设置正确。 希望这能帮助到您!如果还有其他问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

仰望星空-自然-7

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值