读书人

printf(quot;%s(%d)-quot;FILE_LINE_);解决办法

发布时间: 2012-07-25 09:43:05 作者: rapoo

printf("%s(%d)--:",__FILE__,__LINE__);
今天看源码,考到了如下代码,有点不理解。代码如下:
#ifndef DBG_PRINTF(_x_)
#ifdef WEBDBG
#define DBG_PRINTF(_x_) \
do{ \
printf("%s(%d)--:",__FILE__,__LINE__);\
printf _x_;\
}while(0);
#else
#define DBG_PRINTF(_x_)
#endif
#endif
想请教各位大侠,printf("%s(%d)--:",__FILE__,__LINE__)这句话是什么意思?
还有代码中的“\",又是什么意思?
谢谢

[解决办法]
__FILE__ __LINE__ 是内置宏,会被替代成 文件名和行号
\ 是连接符,就是取消掉换行符
[解决办法]
__FILE__ 是内置宏 代表源文件的文件名
__LINE__ 是内置宏,代表该行代码的所在行号
\ 是行连接符,会将下一行和前一行连接成为一行,即将物理上的两行连接成逻辑上的一行

读书人网 >C语言

热点推荐