VScode 中C++编程再次总结
0.简介
1.配置总结
1.1 launch jsion文件
launch.json文件主要用于运行和调试的配置,具有程序启动调试功能。launch.json文件会启用tasks.json的任务,并能实现调试功能。
左侧任务栏的第四个选项运行和调试,点击创建launch.json
{"configurations": [{"name": "C/C++: gcc.exe 生成和调试活动文件","type": "cppdbg","request": "launch","program": "${fileDirname}\\${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "d:\\AppInstall\\GCCAPP\\mingw64\\bin",// 有时候 "cwd"为: "${fileDirname}"或"${workspaceFolder}""environment": [],"externalConsole": false,"MIMode": "gdb","miDebuggerPath": "d:\\AppInstall\\GCCAPP\\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++: gcc.exe 生成活动文件"}],"version": "2.0.0"
}
下面对launch.json文件中的参数进行介绍:
(1)“name”:自定义命名运行与调式的名称,将在左侧运行和调试的菜单中显示名称
(2)“type”:配置类型,调试器类型,cppdbg为C/C++的调试类型。
(3)“request”:配置请求类型,可以为launch(启动)或attach(附加)。
(4)“program”:在windows系统下需要进行调试的可执行文件(.exe文件)及其路径,应该与tasks.json编译后输出的可执行文件(.exe文件)及其路径一致。
(5)“args”:程序调试时传递给程序的命令行参数,一般设为空即可,这里提到的程序实际就上面的.exe文件。
(6)“stopAtEntry”:设为true时程序将暂停在程序入口处,一般设置为false。
(7)“cwd”:当前工作目录(路径)。
(8)“environment”:添加到程序的环境变量。
(9)“externalConsole”:true开启外部控制台窗口,false会使用vscode内部控制台窗口。
(10)“MIMode”:指示 MIDebugEngine 要连接到的控制台调试程序,允许的值为 “gdb”、“lldb”。这里使用gdb进行调试。
(10)“miDebuggerPath”:调试器debugger文件及其路径,这里是调用gdb调试器的路径。
(11)“preLaunchTask”:运行和调式前要启动的tasks任务,也即要启动的编译任务,任务名要和tasks.json里面的"label"值对应一致。
1.2 tasks json文件
tasks.json在编译时用的到,配置tasks.json文件的步骤
菜单栏的终端,选择最后一个配置默认生成任务
再选择第二个c/c++:g++生成活动文件
tasks.json实际上就相当于帮我们完成了g++ -g main.cpp swap.cpp -o a.out的操作
{"tasks": [{"type": "cppbuild","label": "C/C++: gcc.exe 生成活动文件","command": "d:\\AppInstall\\GCCAPP\\mingw64\\bin\\gcc.exe","args": ["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}\\${fileBasenameNoExtension}.exe"],"options": {"cwd": "d:\\AppInstall\\GCCAPP