2014-01-21 44 views

回答

1

是的,你可以在調用編譯器時在命令行上定義宏。請參閱gcc的-D選項。還有預定義的宏,如__LINE__,__FILE__等。

+2

該命令行的東西是GCC功能,沒有任何C標準保證。 – Lundin

+0

@Lundin命令行宏在那裏,非常有用。他們在許多編譯器(也許都是)。我們不能僅僅因爲C標準沒有指定編譯器參數就否認它們的存在。 – Marian

2

在標準C語言中,使用#define創建宏。沒有其他辦法。

+1

取決於我們所說的宏。鑑於宏這個詞的含義,即使是一個函數也會是一個宏。如果他真的在問這個問題,那就是所謂的預處理器宏。他所問的問題是毫無意義的。沒有宏的宏。 – dhein

+0

@Zaibis我指的是C標準所謂的宏,這就是'#define'後面的所有內容。標準中沒有關於術語宏的正式的,規範的定義,但是在整個文檔中,當他們談到'#define':d項目時,他們使用宏詞。 – Lundin

相關問題