vscode c++ json

About Vscode Debug:

前言

blogger已经用上archlinux了 这篇blog是很久以前写的 markdown排版也是大分

内容不保证完全正确有锅欢迎指正


1.tasks.json

{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "shell",
			"label": "C/C++: g++.exe 生成活动文件",
			"command": "C:\\Program Files (x86)\\Dev-Cpp\\MinGW64\\bin\\g++.exe",
			"args": [
				"-fdiagnostics-color=always",
				"-g",
				"-std=c++14",
				"-O2",
				"-Wall",
				"a.cpp",
				"-o",
				"D:/work/a.exe"
			],
			"options": {
				"cwd": "D:/work"
			},
			"problemMatcher": [
				"$gcc"
			],
			"group": "build",
			"detail": "编译器: C:\\Program Files (x86)\\Dev-Cpp\\MinGW64\\bin\\g++.exe"
		}
	]
}

//"command"填g++路径
//"args"就是编译选项+要调试的源程序名字+exe位置
//"cwd"填工作文件夹路径

保留字
${userHome} -用户的主文件夹路径
${workspaceFolder} -在VS Code中打开的文件夹路径
${workspaceFolderBasename} -在VS Code中打开的文件夹名,不带任何斜杠(/)
${file} -当前打开的文件
${fileWorkspaceFolder} -当前打开文件的工作空间文件夹
${relativeFile} -当前打开的文件相对于工作区文件夹
${relativeFileDirname} -当前打开的文件相对于工作区文件夹的dirname
${fileBasename} -当前打开的文件的basename
${fileBasenameNoExtension} -当前打开的文件的basename,没有文件扩展名
${fileExtname} -当前打开的文件的扩展名
${fileDirname} -当前打开文件的文件夹路径
${fileDirnameBasename} -当前打开的文件的文件夹名称
${cwd} -任务运行器在VS Code启动时的当前工作目录
${lineNumber} -当前在活动文件中选择的行号
${selectedText} -当前在活动文件中选择的文本
${execPath} -正在运行的VS Code可执行文件的路径
${defaultBuildTask} -默认构建任务的名称
${pathSeparator} -操作系统用来分隔文件路径中组件的字符

2.launch.json

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "D:/work/a.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "D:/work",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "miDebuggerPath": "C:/Program Files (x86)/Dev-Cpp/MinGW64/bin/gdb.exe",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: g++.exe 生成活动文件"
        }



    ]
}

//"externalConsole": true 表示生成额外命令行窗口 填true
//"preLaunchTask": "C/C++: g++.exe 生成活动文件"和tasks.json的"lebel"一致
//"miDebuggerPath"填gdb路径
//"program" 是要调试的exe的路径(最重要)
posted @ 2025-07-13 12:59  floaya  阅读(10)  评论(0)    收藏  举报