首頁  >  文章  >  後端開發  >  #ifndef和#define的差別

#ifndef和#define的差別

angryTom
angryTom原創
2020-02-14 17:12:538121瀏覽

#ifndef和#define的差別

#ifndef與#define的差異

#一、使用場景不同:

# ifndef使用場景為:

1、頭檔中使用,防止頭檔被多重呼叫。

2、作為測試使用,省去註解程式碼的麻煩。

3、作為不同角色或場景的判斷使用。

#define使用場景:

巨集定義

二、意義不同:

#ifndef表示ifnotdefine。

#define表示define。

 擴充資料:

#ifndef起到的效果是防止一個原始檔兩次包含同一個頭文件,而不是防止兩個原始檔包含同一個頭檔。

而編譯時,這兩個C檔要一同編譯成一個可運行檔。

把頭檔的內容都放在#ifndef和#endif中。不管頭文件會不會被多個文件引用,都要加上這個。

一般格式是這樣的:

#ifndef <标识>
#define <标识>.
...........
#endif<标识>

在理論上可以是自由命名的,但每個頭檔的這個「標識」都應該是唯一的。

標識的命名規則一般是頭檔名全大寫,前後加下劃線,並把檔名中的「.」也變成下劃線,如:

#ifndef_STDIO_H_#define_STDIO_H_......#endif.

推薦學習:c語言影片教學

以上是#ifndef和#define的差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn