VSCode中GCC编译C文件提示找不到文件或目录,寻求帮助
编译报错原因排查与解决办法
你的编译报错核心原因很简单:终端当前工作目录和first.c所在目录不一致。
从你给出的命令行信息能明确看到:
- 编译时终端在
G:\Skills\CODES AND NOTES\C目录下执行gcc first.c -o first.exe,但first.c实际存放在G:\Skills\CODES AND NOTES\C\CHAPTER 1里,gcc在当前工作目录找不到这个文件,所以抛出No such file or directory错误。 - 而你到
CHAPTER 1目录下能正常运行first.exe,是因为此时终端工作目录和exe文件所在目录一致,系统能定位到它。
解决办法
方法一:切换到文件所在目录再编译
在终端执行切换目录的命令:cd "G:\Skills\CODES AND NOTES\C\CHAPTER 1"切换完成后,再运行编译命令:
gcc first.c -o first.exe注意路径里包含空格,所以要用双引号把路径括起来,避免命令解析出错。
方法二:编译时指定文件的完整路径
不用切换目录,直接在原来的终端目录里,给first.c加上完整路径:gcc "G:\Skills\CODES AND NOTES\C\CHAPTER 1\first.c" -o first.exe这样gcc就能根据完整路径找到源文件,编译生成的
first.exe会存放在当前终端工作目录(也就是G:\Skills\CODES AND NOTES\C)下。
小提示
如果用VSCode开发,建议直接打开CHAPTER 1文件夹作为工作区,VSCode会自动把终端的工作目录设置为这个文件夹,这样你打开终端后直接输入编译命令就能正常执行,不用手动切换目录。
内容的提问来源于stack exchange,提问作者Shreyash Ojha
相关产品推荐
相关产品推荐

