關於C 標頭檔案問題

2021-08-15 07:39:36 字數 1020 閱讀 1961

# c標頭檔案可以在c:\program files (x86)\microsoft visual studio\vc98\include中找到,c++標頭檔案可以在 c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.11.25503\include中找到。

在早期c++開發中,c++標頭檔案概略可分為五組:

在後期c++開發中,後兩組應該是被取消了,並出現了如下改變:

(1)c++增加了命名空間概念,藉以將原來宣告在全域性空間下的識別符號宣告在了namespace std下。

(2)統一c++各種字尾名,如.h、.hpp、.hxx等。標準化之前的標頭檔案就是帶字尾名的檔案,標準化後的標頭檔案就是不帶字尾名的檔案。c++ 98 規定使用者應使用新版標頭檔案,對舊版本標頭檔案不在進行強制規範,但大多數編譯器廠商依然提供舊版本標頭檔案,以求向下相容。也就是說帶 .h 的標頭檔案是舊標準的,如果想用新的標準的標頭檔案就不要帶 .h。

(3)另外,為了和c語言相容,c++標準化過程中,原有c語言標頭檔案標準化後,頭檔名前帶個c字母,如cstdio、cstring、ctime、ctype等等。也就是說,我們如果要用c++標準化了的c語言標頭檔案,就得作如下的轉換

#include --> #include

#include --> #include

#include --> #include

<*>表示優先中系統目錄中查詢 該標頭檔案  比如#include 這是系統中的標頭檔案

"*"表示優先從當前目錄中查詢 該標頭檔案  比如#include "head.h"   這是使用者自己定義的標頭檔案

C 中關於標頭檔案的問題

根據編譯原理,在編譯的過程中,只是把頭檔案中的內容進行替換,若重複包含,就會使同一段 在該檔案中出現兩次或多次,引起編譯錯誤。介紹兩種常用的方法,其一是 ifndef a為頭檔名,h代表這是乙個標頭檔案的巨集名 ifndef a h define a h endif原理 每次編譯某一段 時要判定前面...

關於標頭檔案

自定義標頭檔案通常放在使用該標頭檔案的原始檔所在的目錄中,並使用 include myhead.h 來包含。標頭檔案是不編譯的,因為c語言編譯過程之前有個預編譯過程。在這個過程中用標頭檔案中的內容替換原始檔中 include 命令,所以在編譯器看來,沒有標頭檔案,只有原始檔。預編譯過程還包括條件編譯...

C 標頭檔案引用問題

c c 標頭檔案的引用問題 include使用 對於乙個工程 如下 在base中包含 func3.h,func3.c,資料夾main和資料夾func4 在main中包含 main.c,func1.h,func1.c和資料夾func2 在func2中包含 func2.h和func2.c 在func4中...