断言函数模型
来源:互联网 发布:slack通讯软件 编辑:程序博客网 时间:2024/05/16 08:40
#include<stdio.h>#include<assert.h>#define DEBUG //开启断言/******************************************************************//*************************断言函数定义*****************************//******************************************************************/#ifdef DEBUG#define assert_param(expr) ((expr) ? (void)0 : assert_failed(__FILE__,__LINE__))void assert_failed(file, line);#else #define assert_param(expr) ((void)0)#endif/******************************************************************//**********************断言函数faile输出函数***********************//******************************************************************/#ifdef DEBUGvoid assert_failed(unsigned char* file, unsigned int line){printf("---------------ERRO!---------------\n\n");printf("错误文件:%s\n所在行数:%d行\n\n",file,line);}#endif/******************************************************************//***************************函数检测定义***************************//******************************************************************/#define max 32#define IS_FLAG(FLAG) (FLAG==max)void Test(unsigned int flag){assert_param(IS_FLAG(flag));flag=999;printf("-------------SUCCESS!-------------\n\n");printf("%d\n",flag);}/******************************************************************//****************************调用函数******************************//******************************************************************/void main(void){Test(34);}
断言错误:
---------------ERRO!---------------错误文件:D:\C语言编程文件\断言\test.c所在行数:38行-------------SUCCESS!-------------999Press any key to continue
断言成功
-------------SUCCESS!-------------999Press any key to continue
0 0
- 断言函数模型
- assert函数(断言)
- 断言函数assert()
- assert 断言函数/宏
- assert 断言函数/宏
- 断言函数assert
- Python assert 断言函数
- asset断言函数
- assert断言函数的使用
- C++ 断言assert() 函数用法
- 断言assert()函数的使用
- C++中assert断言函数
- 断言
- 断言
- 断言
- 断言
- 断言
- 断言
- .9 图片讲解
- iPhone 6/Plus/5s/三星S5谁的屏幕更好?
- Android自定义控件——开源组件SlidingMenu的项目集成
- 三种主流无线同屏技术介绍(Miracast、DLNA与AirPlay技术)
- poj 1008 Maya Calendar
- 断言函数模型
- Fitnesse使用系列八
- 树状数组拾遗
- Spring与myibatis的整合
- 汇编语言---开机启动流程
- WinForm子窗体和母窗体的交互
- 时针分针重合问题与时针、分针、秒针重合问题
- 基于UDP、TCP协议的C#网络编程
- 学习:java设计模式—工厂模式