读书人

关于ASSERT,该如何处理

发布时间: 2012-02-07 17:45:37 作者: rapoo

关于ASSERT
#define assert(p)if(!(p)){fprintf(stderr,\
"Assertion failed: %s, file %s, line %d\n ",\
#p, __FILE__, __LINE__);abort();}


其中的 #p 是什么意思

[解决办法]
assert(1==0);//假设语句在main.c的第17行

==========================================
输出结果为
Assertion failed: 1==0, file main.c, line 17

[解决办法]
将对应的表达式 p 的文本代码表示 "p " 替换进来。
[解决办法]
# 操作符将参数转换为 字符串
[解决办法]
# 是宏指令,只能在宏里面使用

读书人网 >C++

热点推荐