// https://github.com/Microsoft/vscode-cpptools/blob/master/launch.md { "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示 "type": "cppdbg", // 配置类型,cppdbg对应cpptools提供的调试功能;可以认为此处只能是cppdbg "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加) "program": "C:\\Windows\\system32\\cmd.exe", // 将要进行调试的程序的路径(主目录需要有debug文件夹) // "program": "${workspaceFolder}\\debug\\${fileBasenameNoExtension}.exe", // 将要进行调试的程序的路径(主目录需要有debug文件夹) // "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", // 将要进行调试的程序的路径(Windows路径写法'\\') // "program": "${fileDirname}/${fileBasenameNoExtension}.exe", // 将要进行调试的程序的路径(Linux路径写法'/') "args": ["/C","${workspaceFolder}\\debug\\${fileBasenameNoExtension}.exe","&","pause"], // 程序调试时传递给程序的命令行参数,一般设为空即可 // "args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可 "stopAtEntry": false, // 设为true时程序将暂停在程序入口处,相当于在main上打断点 "cwd": "${workspaceFolder}", // 调试程序时的工作目录,此为工作区文件夹;改成${fileDirname}可变为文件所在目录 "environment": [], // 环境变量 "externalConsole": true, // 为true时使用单独的cmd窗口,与其它IDE一致;18年10月后设为false可调用VSC内置终端 // "externalConsole": false, // 为true时使用单独的cmd窗口,与其它IDE一致;18年10月后设为false可调用VSC内置终端 "internalConsoleOptions": "neverOpen", // 如果不设为neverOpen,调试时会跳到“调试控制台”选项卡,你应该不需要对gdb手动输命令吧? "MIMode": "gdb", // 指定连接的调试器,可以为gdb或lldb。但我没试过lldb "miDebuggerPath": "gdb.exe", // 调试器路径,Windows下后缀不能省略,Linux下则不要 "setupCommands": [ { // 模板自带,好像可以更好地显示STL容器的内容,具体作用自行Google "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": false } ], "preLaunchTask": "Compile" // 调试会话开始前执行的任务,一般为编译程序。与tasks.json的label相对应 }] }