assert()解析

来源:互联网 发布:数据库order by 编辑:程序博客网 时间:2024/05/18 22:43

assert()解析

说明

/* * assert是一个宏,不是函数。 * * assert()常用于函数入口的参数检查。 * * 若assert()括号里的值为假,则终止程序运行,并提示错误。 * 若assert()括号里的值为真,则继续运行。 * * assert()只在Debug版本上起作用。 * assert()在Release版本上被编译器完全优化。 * * assert()的作用就是让我们尽可能在调试函数时把错误排除掉,而不是等到release以后; * 并且参数出现错误并非函数本身的问题,而是调用者传入的参数有问题。 * */

源代码

#include <assert.h>#include <stdio.h>int main(){    char *p = NULL;    assert(NULL != p);    return 0;}

运行结果

[root@localhost lwp_workspace]# ./test test: assert.c:24: main: Assertion `((void *)0) != p' failed.已放弃[root@localhost lwp_workspace]# 
0 0
原创粉丝点击