C语言 指针与assert

assert 又称断言,需要包含头文件 assert.h

用于在运行时确保程序符合指定条件,如果不符合,就报错终止运行。

	assert(p != NULL);

上面代码在程序运行到这一行语句时,验证变量 p 是否等于 NULL。如果确实不等于 NULL ,程序继续运行,否则就会终止运行,并且给出报错信息提示。

也就是说assert可监测地址是否为空。

assert()宏接受一个表达式作为参数。如果该表达式为真 (返回值非零),assert()不会产生任何作用,程序继续运行。如果该表达式为假 (返回值为零), assert() 就会报错。

 

	assert(p != NULL); 

    if(p ! = NULL)
    {

    }
    else
    {
    }

// 二者功能一致,甚至前者的功能更好

 当不需要assert进行程序报错时,我们可以使用 #define NDEBUG 进行关闭

猜你喜欢

转载自blog.csdn.net/2301_76445610/article/details/132211560