没有调试变量信息 ,啥都没有。看了教程也不懂在说啥,jason文件到底是干嘛用?
关于#vscode#的问题:没有调试变量信息 (语言-c语言)
关于#vscode#的问题:没有调试变量信息 (语言-c语言)
launch.json文件是VSCode启动程序的配置文件,着重关注:
program
:代表要运行的二进制文件(也就是你的C代码编译出来的程序)所在路径
miDebuggerPath
:代表调试器(GDB)所在路径
preLaunchTask
:在运行program
前要做的前置任务,比如编译,task.json就是用于该部分
task.json也是配置文件,有几个重要参数:
label
:指定前置任务(比如:“C/C++: gcc 生成活动文件”)名称
command
:任务执行命令,一般来说执行编译命令:gcc
args
:用于command
后面的参数,比如:-g
(debug选项),-f
等
这里给出一个例子:
# launch.json
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "启动程序",
"type": "cppdbg",
"request": "launch",
"program": "/build/main",
"args": [
],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "将反汇编风格设置为 Intel",
"text": "-gdb-set disassembly-flavor intel",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: gcc 生成活动文件",
"miDebuggerPath": "/usr/bin/gdb"
}
}
这里,/build/main
就是我的二进制文件所在路径,/usr/bin/gdb
就是gdb所在路径
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: gcc 生成活动文件",
"command": "gcc",
"args": [
-g,
main.c,
-o,
/build/main
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}
这里我们的task相当于执行的gcc -g main.c -o /build/main
命令,也就是编译main.c了