歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> 關於Unix

freebsd下assert.h的個人理解


#include

#undef assert
#undef _assert // assert.h文件允許多次被加入

#ifdef NDEBUG

#define assert(e) ((void)0) // 等於什麼都沒執行
#define _assert(e) ((void)0)

#else

#define _assert(e) assert(e)
#define assert(e) ((e) ? (void)0 : __assert(__func__, __FILE__, __LINE__, #e))
// #e 表示把e當作字符串
#endif

__BEGIN_DECLS
void __assert(const char *, const char *, int, const char *);
__END_DECLS


// 以上是個人理解。如有不對,懇請指出。謝謝!
Copyright © Linux教程網 All Rights Reserved