• VsCode includePath设置问题


    关注 码龄 粉丝数 原力等级 -- 被采纳 被点赞 采纳率 qq_23143837 2024-06-04 18:02 采纳率: 0% 浏览 17 首页/ 开发工具 / VsCode includePath设置问题 vscode 问题描述:使用VS Cpde 1.89.1打开工程文件夹(目录如下图所示),该文件夹下有4个项目,共用一个c_cpp_properties.json。发现工程3中Bsp_Spi.c里面包含的Bsp.h文件被异常关联到工程1中Bsp.h了,该如何解决。 c_cpp_properties.json配置如下 收起 写回答 好问题 0 提建议 追加酬金 关注问题 微信扫一扫 点击复制链接 分享 邀请回答 编辑 收藏 删除 结题 收藏 举报 追加酬金 (90%的用户在追加酬金后获得了解决方案) 当前问题酬金 ¥ 0 (可追加 ¥500) ¥ 15¥ 20¥ 50¥ 100¥ 200 支付方式 扫码支付 二维码出错 点击刷新 支付金额 15 元 提供问题酬金的用户不参与问题酬金结算和分配 支付即为同意 《付费问题酬金结算规则》 结题 再想想 删除 再等等

    2条回答 默认 最新

    • 阿里嘎多学长 2024-06-04 18:09
      关注

      以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


      根据你提供的信息,问题出现在VSCode的c_cpp_properties.json配置文件中,特别是includePath的设置。这个配置文件定义了编译器查找头文件的路径。为了确保Bsp_Spi.c文件能够正确地关联到它自己的Bsp.h文件,我们需要调整includePath,让它指向正确的目录。

      首先,让我们查看你提供的c_cpp_properties.json配置文件内容:

      {
        "configurations": [
          {
            "name": "Win32",
            "includePath": [
              "${workspaceFolder}/**"
            ],
            "defines": [
              "F28003X",
              "APP",
              "BOOT",
              "BOOTO_FLASH",
              "_DEBUG",
              "UNICODE",
              "_UNICODE",
              "PCS_MASTER",
              "PCS_SLAVER"
            ],
            "cstandard": "c17",
            "cppstandard": "gnu++17",
            "intelliSenseMode": "windows-gcc-x64",
            "version": 4
          }
        ],
        "CSDN@qq_23143837": null
      }
      

      从配置文件中可以看到,includePath目前设置为${workspaceFolder}/**,这意味着它会搜索工作区下的所有目录。这可能是导致Bsp_Spi.c错误地关联到工程1中的Bsp.h的原因。

      为了解决这个问题,你需要调整includePath,让它只包含工程3的头文件目录。假设工程3的头文件目录是工程3/3_bsp/0_inc,你可以这样修改includePath

      {
        "configurations": [
          {
            "name": "Win32",
            "includePath": [
              "${workspaceFolder}/工程3/3_bsp/0_inc"
            ],
            ...
          }
        ]
      }
      

      这样设置后,VSCode将会只在工程3的头文件目录中搜索,从而避免与工程1中的Bsp.h文件冲突。

      另外,如果你有多个项目使用不同的宏定义,你可能需要为每个项目创建不同的配置。VSCode允许你为不同的项目或目标创建多个配置。你可以在c_cpp_properties.json文件中添加更多的配置条目,每个条目包含特定项目的includePathdefines

      至于参考资料,你可以查看VSCode官方文档中的C/C++配置部分,特别是关于如何配置c_cpp_properties.json文件的部分。

      希望这些信息能帮助你解决问题。如果还有其他问题,欢迎继续提问。

      展开全部

      评论 编辑记录
      qq_23143837 2024-06-04 19:41

      这4个项目组成一个完整的工程,因此需要同时打开这4个项目。请问如何在c_cpp_properties.json文件中添加更多的配置条目,为每个工程陪着特定的includePath和defines。非常感谢

      回复
    • 浪客 2024-06-04 20:24
      关注

      c_cpp_properties.json里的配置只是编辑器分析源代码用的,跟编译无关。
      code按文件夹组织,会搜索整个文件夹、
      用相对路径指定到你想要的头文件上

      评论
      qq_23143837 2024-06-04 20:33

      这里仅用vscode阅读代码用,但是编辑器分析源代码阶段,已经将工程3中的Bsp.h文件错误的关联到工程1中的Bsp.h文件上了,我是想解决这个问题。

      回复
      qq_23143837 2024-06-04 20:34

      问题现象就是,我在工程3的Bsp_Spi.c中点击Bsp.h,跳转到了工程1中Bsp.h头文件中,而不是工程3中Bsp.h头文件中。

      回复
      浪客 回复 qq_23143837 2024-06-04 20:42

      只能改代码了,

       #include "../0_inc/Bsp.h"
      

      或者多开几个code,一个窗口加载一个项目。

      回复
      展开全部4条评论
    编辑
    预览

    报告相同问题?

  • 相关阅读:
    应用系统设计:在线教育平台,B2C平台设计
    关于Vue+webpack使用unocss编写CSS,打包后CSS没加前缀
    【Python查找算法】二分查找、线性查找、哈希查找
    Python windows安装Python3环境
    使用sonar-scanner扫描代码
    什么是Peppol ID?如何创建?
    如何在idea中新建第一个java小程序
    001.Python3.10+Pycharm2022.2环境搭建、pip使用
    让前端和后端要“动手”的7大行为,你中了几个。
    【人工智能】确定型推理
  • 原文地址:https://ask.csdn.net/questions/8113978