from http://andylin02./blog/469703 2009.09 调试常用的宏 __FILE__:当前文件名 __FUNCTION__:当前函数名 __LINE__:当前行 __DATE__:含有形式为月/日/年的串,表示源文件被翻译到代码时的日期。 __TIME__:包含程序编译的时间。时间用字符串表示,其形式为: 分:秒 __STDC__:宏指令的意义是编译时定义的。一般来讲,如果__STDC__已经定义,编译器将仅接受不包含任何非标准扩展的标准C/C++代码。如果实现是标准的,则宏__STDC__含有十进制常量1。如果它含有任何其它数,则实现是非标准的。 __cplusplus 与标准c++一致的编译器把它定义为一个包含至少6为的数值。与标准c++不一致的编译器将使用具有5位或更少的数值。 没想到 VC6 不支持 __FUNCTION__ 所以我写了如下的奇怪代码 //用来记录当前行和当前函数//也可说是记录 堆栈 void log_stack(const char *file, int line, const char * function); //当然还要对 __FUNCTION__ 宏作点修饰,因为这个宏只是在函数里面才起作用 //据说 VC6 也是不支持 __FUNCTION__ 的
Cpp代码
|
|