【问题标题】:VScode C debug problem with unable to find corresponding c fileVScode C调试问题,找不到对应的c文件
【发布时间】:2021-09-15 12:58:35
【问题描述】:

当我使用vscode调试时,遇到像printf()这样的函数,它会生成一个错误消息,说找不到某个文件

无法打开“acrt_iob_func.c”:无法读取文件 'c:_\M\mingw-w64-crt-git\src\mingw-w64\mingw-w64-crt\stdio\acrt_iob_func.c' (错误:无法解析不存在的文件 'c:_\M\mingw-w64-crt-git\src\mingw-w64\mingw-w64-crt\stdio\acrt_iob_func.c')。

最后的 C 文件 (acrt_iob_func.c) 有所不同。 感谢使用 gcc 作为我的编译器帮助。

【问题讨论】:

  • 您是否检查过该文件是否存在? -- 路径看起来很奇怪,下划线作为驱动器规范后的第一个字符。你的配置正确吗? (与其他 IDE 相比,VS Code 似乎过于复杂。)
  • @thebusybee 该文件在错误消息给出的路径中不存在,在我的笔记本电脑上也不存在。下划线是一个以某种方式存在于 C:\ 下的文件夹(字面意思是有一个名为“_”的文件夹)。由于我没有stdio文件夹下的文件,是否可以下载所有丢失的文件,我应该在哪里配置它以使其在某个目录下查找所需的文件?
  • 好的。从我已经怀疑这一点的路径来看,您的评论似乎证实了这一点,缺少的来源是图书馆的一部分。显然你试图进入printf()。通常我们没有这些来源,因为它们对于我们的调试目的不是必需的。
  • 您可以通过 over 调用这些标准函数来继续,或者忽略消息并“继续直到函数离开”,或者尝试在 MinGW 上查找源项目(确保您寻找正确的版本),或其他任何东西。我经常选择第一个选项。我的代码中有 99.99% 的错误。
  • @thebusybee 非常感谢您的回答!确实跨步更好,因为我真的不需要研究 printf 函数。我还在launch.json中添加了skip命令。

标签: visual-studio-code vscode-settings vscode-debugger


【解决方案1】:

跳过命令添加到“setupCommands”下的launch.json中以进行静音警告:

{
    "description": "Skip stdio-common files",
    "text": "-interpreter-exec console \"skip -gfi stdio/*.c\""
},

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-22
    • 1970-01-01
    • 2021-12-22
    • 1970-01-01
    • 1970-01-01
    • 2021-10-28
    • 2021-12-19
    相关资源
    最近更新 更多