ANSIC標(biāo)準(zhǔn)定義了以下6種可供C語(yǔ)言使用的預(yù)定義宏:
__LINE__ 在源代碼中插入當(dāng)前源代碼行號(hào)
__FILE__
在源代碼中插入當(dāng)前源代碼文件名
__DATE__
在源代碼中插入當(dāng)前編譯日期〔注意和當(dāng)前系統(tǒng)日期區(qū)別開(kāi)來(lái)〕
__TIME__ 在源代碼中插入當(dāng)前編譯時(shí)間〔注意和當(dāng)前系統(tǒng)時(shí)間區(qū)別開(kāi)來(lái)〕
__STDC__
當(dāng)要求程序嚴(yán)格遵循ANSIC標(biāo)準(zhǔn)時(shí)該標(biāo)識(shí)符被賦值為1,。
__cplusplus
標(biāo)識(shí)符__LINE__和__FILE__通常用來(lái)調(diào)試程序,;
標(biāo)識(shí)符__DATE__和__TIME__通常用來(lái)在編譯后的程序中加入一個(gè)時(shí)間標(biāo)志,,以區(qū)分程序的不同版本,;
當(dāng)要求程序嚴(yán)格遵循ANSIC標(biāo)準(zhǔn)時(shí),,標(biāo)識(shí)符__STDC__就會(huì)被賦值為1;
當(dāng)用C++編譯程序編譯時(shí),,標(biāo)識(shí)符__cplusplus就會(huì)被定義,。
/* ************************************************************************
* Filename: test.c
* Description:
* Version: 1.0
* Created: 2011年07月21日 23時(shí)09分30秒
* Revision: none
* Compiler: gcc
* Author: YOUR NAME (),
* Company:
* ************************************************************************/
#include <stdio.h>
int main()
{
printf("this file name is:*%s*\n",__FILE__);
printf("this line number is:*%d*\n",__LINE__);
printf("this time is:*%s*\n",__TIME__);
printf("this date is:*%s*\n",__DATE__);
return 0;
}