软件调试:利用断言ASSERT宏定位软件bug
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,/* *Author : DavidLin *Date : 2014-12-26pm *Email : linpeng1577@163.
千家信息网最后更新 2026年11月02日软件调试:利用断言ASSERT宏定位软件bug
/* *Author : DavidLin *Date : 2014-12-26pm *Email : linpeng1577@163.com or linpeng1577@gmail.com *world : the city of SZ, in China *Ver : 000.000.001 *For : threads for rxtx! *history : editor time do * 1)LinPeng 2014-12-26 created this file! * 2) */ /* assert_self.h */#ifndef __ASSERT_SELF_H__#define __ASSERT_SELF_H__#include#define ASSERT_ENABLE (1)#define xprintf printf /* xprintf can be tty print or uart print, etc */#if ASSERT_ENABLE#define assert_error() \ do \ { \ xprintf("[ERROR] Assert FILE: %s: LINE %d\n", __FILE__, __LINE__); \ }while(0)#define ASSERT1(para) \ do \ { \ if(!para) \ { \ assert_error(); \ } \ }while(0) \#else /* if ! ASSERT_ENABLE */ #define ASSERT1(para) \ do \ { \ if(para) \ { \ } \ }while(0) #endif /* end of ASSERT_ENABLE */#endif /* end of __ASSERT_SELF_H__*/
测试用例
/* test case : test.c */#include#include"assert_self.h" int main(int argc, char* argv[]){ switch(argc) { case 2: ASSERT1(atoi(argv[1])); break; default: printf("ARG ACCEPT 1\n"); break; } exit(0);}
软件Bug定位,很多时候,比如利用Assert宏,可以把48小时的调试大餐压缩成1口可以吃掉的饭后甜点,每个软件小组都在重新演化,过去的经验总是得不到很好的传承,这就是我们!
软件
定位
大餐
小时
小组
就是
时候
甜点
经验
测试
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云南咖啡
华服互联网科技靠谱吗
中国互联网科技股
鸠鸠互联网科技
深圳互联网科技公司
合肥互联网科技公司
华中科技大学互联网
伴你行互联网科技有限公司
中国的互联网科技企业的崛起
互联网科技教育视频
互联网经济与金融科技
智腾互联网科技有限公司
苏州五指互联网络科技有限
恒生互联网科技指数跳水
乌鲁木齐新华智原互联网科技学校
互联网科技和法律行业
福建互联网展示科技馆设计
科技互联网行业投资研究
银川新华互联网科技学校原画
承德科技产业互联网平台
互联网科技公司华为
互联网 科技创新
齐家互联网科技有限公司
互联网科技网站
团飞科技与伯堂互联网服务平台
互联网科技有哪些公司
崇明区互联网教育科技诚信经营
华夏恒生科技与互联网科技
广州千川互联网科技有限公司
富国互联网金融科技混合基金