簡體   English   中英

header 文件未找到 VScode 但未給出警告或錯誤

[英]header file not found VScode but no warnings or errors given

我正在嘗試在 vsCode 中運行一個 c 程序,但它在引用其中一個 my.h 文件時一直告訴我“沒有這樣的文件或目錄”(但發現其他文件還不錯......)。 我已經無數次嘗試用谷歌搜索這個問題,但所有解決方案似乎都超出了我的理解范圍 go 並且參考了我找不到的東西,例如 json 文件(並且谷歌搜索也沒有幫助)。 以下是我收到的錯誤

在此處輸入圖像描述

您是否嘗試過使用#include "parser.h"

來自C 標准 (ISO/IEC 9899:2018 (C18)) ,第6.10.2節“源文件包含”:

2 . 表單的預處理指令
# include < h-char-sequence > new-line
在一系列實現定義的位置中搜索由 < 和 > 定界符之間的指定序列唯一標識的 header,並導致用 header 的全部內容替換該指令。如何指定位置或標識 header 是實現-定義。
3.表單預處理指令
# include " q-char-sequence " new-line
導致用 " 分隔符之間的指定序列標識的源文件的全部內容替換該指令。以實現定義的方式搜索指定的源文件。如果不支持此搜索,或者搜索失敗,該指令被重新處理,就好像它讀取
# include < h-char-sequence > new-line
具有與原始指令相同的包含序列(包括 > 字符,如果有的話)。

包含源文件時,如果您使用#include <header.h>表示法,編譯器(在您的情況下為gcc )將在系統目錄的標准列表中搜索 header(如果使用,則在-l之后指定的目錄) -l選項),而如果使用#include "header.h"符號,編譯器將在包含當前文件的目錄中搜索 header 。

如果你想知道gcc在哪里尋找源文件,我建議你看看這篇文章

正如 mikyll98 已詳細解釋和指出的那樣, #include <>#include “”用於不同的事物。 檢查您的 parser.h 屬於哪種情況。

除了 miky 的回答之外,您還應該檢查 header 文件的位置是否對 VScode“可見”。 這就是 json 文件的用武之地。VSCode 設置有時很奇怪(我認為),因為有時您必須求助於 json 配置文件才能完全修改設置,而此類 json 文件的位置/可配置旋鈕並不明確。 您可以打開 VSCode 設置,在搜索欄中輸入“include path”或“include directories”,然后輸入 go 到與 C/C++ 相關的部分。 應該有一個選項,您可以通過 GUI 添加額外的目錄,或者讓 VSCode 打開一個 json 文件,然后您可以將路徑添加到該文件。 但請注意,上述 json 文件的可配置旋鈕並不明確,您必須查找 VSCode 的文檔網站才能知道要添加哪些特定的 json 屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM