解决VSCode编译C++报错No such file or directory问题

问题

最近使用VSCode运行C++代码,弹出错误提示:No such file or directory。猜测可能是因为中文路径的问题。

原因

  • 排查后发现,确实是因为项目是中文路径的原因,安装的编译器不支持路径含中文。

只要路径名称存在中文就会运行报错,显示无法找到目标文件,后来看了好多解答,都说没办法从根本上解决。

解决方案

于是想到两个解决方案

  • 试着能否解决编译器支持中文路径运行。
  • 严格要求项目的路径为全英文(为文件夹设置一个别名)。

解决编译器支持中文路径运行

网上有一大堆的文章。基本最终的解决方法都是改Launch.json与task.json,把我们的编译的exe程序放到一个全英文路径下面。我觉得这种方法不太妥,对于其他软件来说,又可能会发生不兼容问题,况且个人也不太喜欢再搞出一个路径来放这些调试程序。

对于这种方法感兴趣的话,大家可以参考 解决VS Code中文名及中文路径调试报错_C_内存溢出

为文件夹设置别名或备注

严格要求项目的路径为全英文,我为什么推荐这种方法呢?因为即使我们通过第一种方法在VC上临时解决了我们的问题,但是之后项目如果需要在其他软件里打开呢,可不可能又会发生不兼容问题,那到时候又要如何解决?这我们无法确定。

我们想要降低风险,可以给文件夹设置一个别名或备注,这样既可以保证英文路径的不变,也可以给文件夹加一个"备注",来提高我们的可阅读性,方便日后查看与管理。

参考笔者文章——设置文件夹别名与备注-解决中文路径导致软件报错问题(nuoyo.cn)

解决VSCode编译C++报错No such file or directory问题
笔者试着能否寻找一种方式,既可以保证英文路径的不变,也可以给文件夹加一个"备注",来提高我们的可阅读性,方便日后查看与管理。因此本文旨在介绍文件夹添加"备注"的几种方式,如别名、备注。
2022-10-22

给TA打赏
共{{data.count}}人
人已打赏
开发

C++语言进阶 – 引用变量

2023-9-15 15:02:23

开发

C++语言入门-指针

2023-9-15 15:23:18

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索