VScode 头文件配置 文件层级原因

在尝试使用VScode进行CG相关的GLFW环境配置时遇到头文件出错问题。通过对比和修改c_cpp_properties.json及tasks.json脚本,发现解决关键是理解"-I"命令在任务脚本中的作用。当"I"后面接"**"时,它会查找包括子目录在内的所有文件,而不接则仅限于当前目录。如果VScode项目头文件包含出现错误,可能与文件层级配置有关。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

VScode 头文件配置

0.

之前用的code blocks,确实还行,但是链接动态库是真的蛋疼加拉跨。再加上去他们论坛,里面的一个个说话好凶,就退了。

加上最近给机器加了根内存条,所以就转用VScode写小代码。

基本信息:

  • VScode
  • MinGW
  • cpp开发
  • cpp相关plugs:C/C++、C/C++ Extension Pack、C++ Intellisense

1.配GLFW环境,头文件出错

想学CG相关的,于是配一下GLFW,但是头文件报错。查了一圈都没啥用,但是这个脚本是从刷leetcode脚本配置加了头文件过来的,刷题环境没问题的。于是仔细看了一下脚本

2.脚本

环境下是4个脚本

  • c_cpp_properties.json下称1
  • launch.json
  • setting.json
  • tasks.json下称4
    其中主要和1、4脚本相关.
    1脚本是C/C++插件的脚本,配置C/C++编译环境
    4是VSCode的任务脚本,执行编译工作

由于我用的是MinGW,所以在2脚本中,基本上就类似于linux的编译命令。
仔细看了一下,并修改对比之后,发现了问题。

即,只要4脚本配置正确,1脚本可以直接默认就行不用管。

3.如何配置

配置的问题就是linux的

  • -I (大写的i,ijk的i)
    命令

脚本中,命令都写在"args"下面,所以添加上去就行。
如下:

            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-I",
                "../../../include/**"
                "../../../include/"
              //此处省略绝对路径的前面部分
            ],

我写了两种。
一个是inc目录后接**
一个是不接
就是这里导致了GLFW头文件报错

  • inc后有**的:是include文件和文件夹(不太清楚是不是这样,简单测试好像是这个逻辑)
  • inc后没有的:是只匹配当前目录下的文件

具体可能需要查阅VSCode的说明文档,但是懒得去看了。

如果你的VSCode项目头文件包含报错,就很有可能是因为层级关系原因。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值