ANSIC標準提供的預定義巨集

2021-07-08 19:10:50 字數 908 閱讀 6548

ansic標準定義了以下6種可供c語言使用的預定義巨集:

__line__                          在源**中插入當前源**行號  

__file__                          在源**中插入當前源**檔名

__date__                        在源**中插入當前編譯日期〔注意和當前系統日期區別開來〕  

__time__                         在源**中插入當前編譯時間〔注意和當前系統時間區別開來〕        

__stdc__                        當要求程式嚴格遵循ansic標準時該識別符號被賦值為1。  

__cplusplus

識別符號__line__和__file__通常用來除錯程式;  

識別符號__date__和__time__通常用來在編譯後的程式中加入乙個時間標誌,以區分程式的不同版本;

這四個都是預編譯巨集,不是包含在標頭檔案中的

__file__是當前編譯的檔案的檔名 是乙個字串

__time__是當前編譯的檔案的編譯時間 格式是hh:mm:ss 是字串

__date__是當前編譯的檔案的編譯日期 格式是mmm:dd:yyyy 是字串

__line__是呼叫該巨集語句所在的行數,是個十進位制數

用在巨集定義中

譬如:#define test (__file__" "__time__) /*這個括號沒有也行的*/

int main(void)

假如該**的檔案名叫console.cpp

那麼會輸出檔名加編譯時間

.\console.cpp 21:34:22

ANSI C標準中標準預定義巨集整理(備用)

ansi c標準中有幾個標準預定義巨集 line 在源 中插入當前源 行號 file 在原始檔中插入當前源檔名 date 在原始檔中插入當前的編譯日期 time 在原始檔中插入當前編譯時間 stdc 當要求程式嚴格遵循ansi c標準時該標識被賦值為1 cplusplus 當編寫c 程式時該識別符號...

預定義,巨集定義

巨集定義 其作用就是 換其名曰 給程式中的一段特殊的 函式,資料取了個簡單明瞭的名字。不過有一點這傢伙的作用範圍是全域性的。即使它是在某乙個函式塊中定義的。這個其實也容易理解。因為巨集定義是預定義的一種,在我們的程式之前,由預編譯器 cpp 提前編譯出來了,那個時候程式裡的結構是個啥樣子編譯器壓根就...

預定義 MSC VER巨集

一 介紹預定義巨集 msc ver 一.1 msc ver是微軟c c 編譯器 cl.exe編譯 時預定義的乙個巨集。需要針對cl編寫 時,可以使用該巨集進行條件編譯。一.2 msc ver的值表示cl的版本。需要針對cl特定版本編寫 時,也可以使用該巨集進行條件編譯。對應關係點此鏈結檢視。一.3 ...