assert()

assert() 宏用法

注意:assert是宏,而不是函数。在C的assert.h头文件中。

assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行.

断言只有在Debug模式下才有效,它可以有两种形式

1.assert Expression1

2.assert Expression1:Expression2

其中Expression1应该总是一个布尔值,Expression2是断言失败时输出的失败消息的字符串。如果Expression1为假,则抛出一个 AssertionError,这是一个错误,而不是一个异常,也就是说是一个不可控制异常(unchecked Exception),AssertionError由于是错误,所以可以不捕获,但不推荐这样做,因为那样会使你的系统进入不稳定状态。

#include

#include

#include

intmain(void){

FILE*fp;

fp=fopen("test.txt","w");//以可写的方式打开一个文件,如果不存在就创建一个同名文件

assert(fp);//所以这里不会出错

fclose(fp);

fp=fopen("noexitfile.txt","r");//以只读的方式打开一个文件,如果不存在就打开文件失败

assert(fp);//所以这里出错

fclose(fp);//程序永远都执行不到这里来

return0;

}

更详细学习资料的在我的头条文章仔细的看下,只是粗略的概述了一遍,当然更详细具体的可以自己去找资料,当然也可以加我的群哈368282579,可以交流的,群内也有针对0基础的新手资料,项目资源也是很丰富的,希望对各位有所帮助哈


分享到:


相關文章: