当前位置: 技术问答>linux和unix
linux中怎么屏蔽assert?
来源: 互联网 发布时间:2016-06-18
本文导语: windows中只要编译的是release版本,assert就会失效。 linux怎么做? | assert是供测试时用的,在开发时加上编译参数-DDEBUG,DEBUG是自定义的全局宏定义(楼主可以自己定义一个其他的):gcc -DNDEBUG...
windows中只要编译的是release版本,assert就会失效。
linux怎么做?
linux怎么做?
|
assert是供测试时用的,在开发时加上编译参数-DDEBUG,DEBUG是自定义的全局宏定义(楼主可以自己定义一个其他的):gcc -DNDEBUG
然后在程序中这样用
#define DEBUG
assert();
#endif
这个做法在C++编程思想第二版,第二章中有
然后在程序中这样用
#define DEBUG
assert();
#endif
这个做法在C++编程思想第二版,第二章中有
|
Makefile 中加
CFLAGS += -DNDEBUG
或者
gcc -DNDEBUG
CFLAGS += -DNDEBUG
或者
gcc -DNDEBUG
|
当然也可以先判断是否为release
#ifdef release
# define assert
#endif
#ifdef release
# define assert
#endif