济南网站设计制作公司,吉林省吉林市邮政编码,如何自己免费建网站,杭州职称评审系统网站C语言异常捕获机制 - assert
快速入门
想快速入门该模块请访问#xff1a;介绍#xff0c;数据接口#xff0c;示例代码
介绍
通常一个良好的代码功能运行环境都有功能运行前检查和运行后检查两个方面。#xff23;语言中提供了assert机制来做这件事情
assert 的作用是…C语言异常捕获机制 - assert
快速入门
想快速入门该模块请访问介绍数据接口示例代码
介绍
通常一个良好的代码功能运行环境都有功能运行前检查和运行后检查两个方面。语言中提供了assert机制来做这件事情
assert 的作用是现计算表达式 expression 如果其值为假即为0那么它先向 stderr 打印一条出错信息,然后通过调用 abort 来终止程序运行。使用 assert 的缺点是频繁的调用会极大的影响程序的性能增加额外的开销。
注意
每个assert只检验一个条件,因为同时检验多个条件时,如果断言失败,无法直观的判断是哪个条件失败不能使用改变环境的语句,因为assert只在DEBUG个生效,如果这么做,会使用程序在真正运行时遇到问题只在debug版本中会生效而release版本无效因此不建议使用assert去做异常捕获或者代码质量检查宁愿多写一点判断分支来避免引起不必要的问题。
数据与接口
头文件
#include assert.h数据
/* 无数据 */接口
断言一个表达式是否为真如果为假则报错退出程序 assert( expr );伪代码
#include assert.h int your_func(入参) {assert(入参);... fp open();assert(fp);...return 0;
}示例比大小
#include stdio.h
#include assert.hint main() {int num;printf(please enter the num:);scanf(%d, num);assert(num 10);printf(program succ ending\n);return 0;
}
参考链接
https://www.runoob.com/w3cnote/c-assert.html