二. 程序的运行和调试
1.launch.json
复制下列代码至launch.json,并根据指导做出相对/绝对路径修改
用 IntelliSense 了解相关属性。
{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version":"0.2.0","configurations":[{"name":"gcc.exe - 生成和调试活动文件","type":"cppdbg","request":"launch","program":"${workspaceFolder}\\coin\\${fileBasenameNoExtension}.exe","args":[],"stopAtEntry": false,"cwd":"${workspaceFolder}",// 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录 "environment":[],"externalConsole": true,"MIMode":"gdb","miDebuggerPath":"F:\\vscode\\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 生成活动文件"}]}
- tasks.json
{"tasks":[{"type":"cppbuild","label":"C/C++: gcc.exe 生成活动文件","command":"F:\\vscode\\mingw64\\bin\\gcc.exe","args":["-fdiagnostics-color=always","-g","${file}","-o",// "${fileDirname}\\coin\\${fileBasenameNoExtension}.exe", //使用该路径在对创建的子文件夹内的程序进行调试时会出现"launch:program“*******” does not exist",详细解释请往下看"${workspaceFolder}\\coin\\${fileBasenameNoExtension}.exe","-fexec-charset=GBK"],"options":{"cwd":"${workspaceFolder}"},"problemMatcher":["$gcc"],"group":{"kind":"build","isDefault": true
},"detail":"调试器生成的任务。"}],"version":"2.0.0"}
收纳生成的 exe 可执行文件
打开.vscode 文件夹下的 launch.json 文件,找到 “${fileDirname}${fileBasenameNoExtension}.exe”
修改成 “${fileDirname}\coin${fileBasenameNoExtension}.exe” 并保存,同理,tasks.json 下也有相同的字段,需要修改
上面的代码已经修改好,可以直接复制
在源文件同目录下新建 coin 文件夹,程序运行后,可执行文件将会生成在里面(其中 coin 可修改成你喜欢的英文名字)
这样 .c 文件一多起来的时候,就不会出现 .exe 和 .c 相互穿插在目录中-
中文乱码问题
打开.vscode 文件夹下的 task.json 文件,找到 “${fileDirname}${fileBasenameNoExtension}.exe” 在后面加上英文 逗号 然后回车到下一行,粘贴下面文本 “-fexec-charset=GBK” 并保存,上面的代码也已经修改好
三.launch:program“****.exe” does not exist问题**
提示
若源代码文件夹含有中文路径,将会无法编译程序。
若你的Windows用户名使用了中文,可能无法运行。
一.当你在工作区新建的二级文件夹下调试程序可能引发此问题
程序运行需要找到生成的exe文件,exe文件的存放路径在program中,大多up主将根目录设置为
f
i
l
e
D
i
r
n
a
m
e
,需要修改成
{fileDirname},需要修改成
fileDirname,需要修改成{workspaceFolder},上面launch.json已经配置好了
路径的语法贴在最下面,大家理解下好自行配置.
许多调试器支持以下某些属性:
program- 启动调试器时要运行的可执行文件或文件
args- 传递给程序进行调试的参数
env- 环境变量(该值可用于“取消定义”变量)null
————————————————
版权声明:本文为CSDN博主「wanna be friend」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_59286424/article/details/128270328
版权归原作者 JaedongXue 所有, 如有侵权,请联系我们删除。