當前位置:首頁 » 編程語言 » c語言中的被包含文件
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言中的被包含文件

發布時間: 2022-09-14 10:26:59

⑴ C語言包含文件的格式

..(兩個點)表示上一級目錄

相應的

.(一個點)表示當前目錄

⑵ C語言文件包含相關問題

兩個 .c 文件沒有包含關系的話,編譯器當然是分別編譯兩個 .c 文件。這里把編譯器生成的文件稱為 .obj 文件,.obj 文件中不需要有所有用到的函數的定義

鏈接的時候需要告訴鏈接器兩個 .obj 文件之間有引用關系,這樣鏈接器就會把兩個 .obj 文件組合起來,形成完整的程序,此時所有用到的函數都必須有定義,否則就會有鏈接期錯誤

至於要編譯哪些文件,哪些文件需要鏈接在一起,必須告訴 編譯器/鏈接器,可以是手動(通過命令行)告訴,也可以利用配置文件,或 IDE 自動生成……

⑶ C語言中文件包含功能怎麼用

  1. 文件包含是指一個C語言源程序中將另一個C語言源程序包含進來,通過include預處理指令實現。

一般形式:

#include」被包含文件名」

或#include<被包含文件名>

2. 作用:將指定文件包含在當前文件中,插入至文件包含指令相應位置處。使用文件包 含指令,可以減少程序設計人員的重復勞動,提高程序開發效率。

3. 說明:


(1)被包含的文件一般指定為頭文件(*.h),也可為C程序等文件。


(2)一個include指令只能指定一個被包含文件,如果要包含n個文件,則要用到n條include指令。


(3)不能包含OBJ文件。文件包含是在編譯前進行處理,不是在連接時進行處理。


(4)當文件名用雙引號括起來時,系統先在當前目錄中尋找包含的文件,若找不到,再在系統指定的標准方式檢索其它目錄。而用尖括弧時,系統直接按指定的標准方式檢索。


一般系統提供的頭文件,用尖括弧。自定義的文件,用雙引號。


(5)被包含文件與當前文件,在預編譯後變成同一個文件,而非兩個文件。


(6)文件包含可以嵌套,但必須按順序包含。

⑷ C語言文件包含問題

不需要考慮庫文件被重復包含的問題,這些標准文件內部都用宏和條件編譯的方式做了防護,不會出現被重復包含的問題

反倒是你自定義的聲明/宏會被重復包含

一般的做法是使用專門的宏作為標記,先判斷該宏在之前是否已被定義,如該宏已被定義則通過條件編譯忽略本頭文件剩下的內容,這樣就可以避免重復定義/聲明的問題

形如:

#ifndef__MYSTRING_H__
#define__MYSTRING_H__

#defineTrue(1)
...

voidfunc1(int);
voidfunc2(int);
...

#endif

⑸ C語言文件包含相關問題

這個函數:int t()
在dfq.c中有定義,在mainc()中包含了dfq.c,#include預處理指令將其後指定的文件原地展開。此時相當於main.c中又定義了一次 int t(),C語言規定標識只能定義一次(但可以聲明多次).
解決這個問題的方法有多種,通常的做法是:
建一個頭文件:dfq.h,在其中聲明函數int t();大致像這樣
#ifndef DFQ_H
#define DFQ_H

int t();

#endif

然後在dfq.c中的開始處:
#include "dfq.h"

在main.c中的開始處:
#include "dfq.h"

簡單解釋一下dfq.h中的#ifndef預處理指令的意思:主要是為了防止多次重復的文件包含。當第1次包含時DFQ_H沒有定義,此時包含文件內容,第2次以上包含時,因有了DFQ_H的定義,因此之後的內容將被忽略。

⑹ 什麼是C語言文件包含處理

文件包含處理是指在一個源文件中,通過文件包含命令將另一個源文件的內容全部包含在此文件中。在源文件編譯時,連同被包含進來的文件一同編譯,生成目標,目標文件。