看到一道題目:vs2010中,如何輸出當前文件路徑和源文件當前行號。
不知道,於是立刻上網搜,於是找到了答案:
總結一下,有用的時候就直接拿來用了,據說它們是系統預定義宏,但這種宏並不是在某個文件中定義的,而是由編譯器定義的。
代碼如下:
cout << __LINE__ << endl; //輸出語句所在的行號
cout << __FILE__ << endl; //輸出文件名(包括路徑)
cout << __TIME__ << endl; //輸出當前時間
cout << __TIMESTAMP__ << endl; //輸出時間戳
cout << __DATE__ << endl; //輸出日期
上面的幾種宏都能在vc6.0和vs2010中運行,輸出如下:
代碼如下:
57
d:\documents and settings\yx\my documents\visual studio 2010\projects\matrix\mat
rix\matrix.cpp
16:51:33
Mon Mar 12 16:51:32 2012
還有一個輸出輸出函數名的宏__FUNCTION__,在vs2010中運行有效,但在vc6.0中沒有定義,如在主函數中調用,輸出vmain。