/*************************************************************************
> File Name: assert.c
> Author: Mr.Yang
> Purpose:演示函数assert的用法
> Created Time: 2017年05月29日 星期一 19时57分54秒
************************************************************************/ #include <stdio.h>
//#define NDEBUG 频繁调用会影响程序的性能,可在调试结束后禁用assert
#include <assert.h>//使用assert函数需引入包文件
#include <stdlib.h> int main(void)
{
FILE *fp; /*以写的方式打开*/
fp = fopen("test.txt","w");
assert(fp);
fclose(fp); /*以只读的方式打开*/
fp = fopen("newtest.txt","r");//newtest.txt是不存在的
assert(fp);
fclose(fp);//程序永远都执行不到这里来 return ;
} 执行结果:

assert: assert.c:24: main: Assertion `fp' failed.
已放弃

函数原型:

#include <assert.h>

void assert( int expression );

assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。

参考来源:http://www.cnblogs.com/ggzss/archive/2011/08/18/2145017.html

 

最新文章

  1. DBA数据库:MySQL简述
  2. dvwa第一次接触
  3. 注意力机制(Attention Mechanism)在自然语言处理中的应用
  4. 【图说】Eclipse与Unity 3D协同工作
  5. 安装MySQL在最后的start service停住了解决方法
  6. [jquery] jQuery点滴[持续更新]
  7. PoshyTip jQuery 文本提示插件的使用
  8. Java集群之session共享解决方案
  9. poj 2528Mayor&#39;s posters
  10. Python Socket Programming
  11. C#中的GET和SET访问器
  12. 基于session认证 相亲小作业
  13. 三种方法为QLineEdit添加清除内容按钮
  14. Google advertiser api开发概述——入门指南
  15. 【Java】java数据库连接中C3P、DBCP、Druid连接池的使用
  16. 2015-09-29 js2
  17. Final发布
  18. 8、QObject类 moc处理后代码
  19. XAudio2学习之调节音调
  20. CentOS(学习笔记一)

热门文章

  1. 002、将mysql用作一个简单的计算器
  2. 吴裕雄--天生自然C++语言学习笔记:C++ 判断
  3. Python MongoDB 插入文档
  4. hdu 1277 全文检索 (字典树应用)
  5. linux命令之strace简单使用
  6. Nginx php-fpm 分离搭建 (上) 未完
  7. 基于Ambari的WebUI部署HBase服务
  8. 【Android】家庭记账本手机版开发报告六
  9. bzoj1415 NOI2005聪聪和可可
  10. JAVAEE 和项目开发(第六课:服务器的安装和目录介绍和闪退解决办法)