[C语言] 在单片机的嵌入式开发中使用宏定义一键开关日志输出/打log调试

前言

在编写项目时,我们通常需要日志输出来帮助我们追踪程序执行的内容,以便在出现BUG时较为方便的复现,并在调试完成后快速的关闭过于详细的LOG输出,避免干扰使用中的体验,在函数中一个一个的增加printf函数相比之下较为不便,并且也不便于完成调试后的注释

为了解决这个问题,我们可以利用C语言中的宏定义来快速的构建一个自定义的调试功能,在能够输出详细信息的同时还可以一键开关

正文

编译器内置宏:

编译器内置了一些宏定义,这些宏定义不仅可以帮助我们完成跨平台的源码编写,也可以巧妙地帮我们输出非常有用的调试信息

ANSI C标准中有几个标准预定义宏:

  • LINE:等同于当前源代码中所在位置的行号;
  • FILE:等同于当前源文件名;
  • DATE:在源文件中插入编译时的日期
  • TIME:在源文件中插入编译时的时间;

定义用来打log的语句

使用以上这几个宏定义,可以简单的构建一个打LOG语句,其具体实现方法如下

#include "stdio.h" 

// 这里选择__DEBUG__作为开关,注释掉下面这一行,则可以直接关闭程序中的DEBUG输出
#define __DEBUG__

#ifdef __DEBUG__  
// 如果对__DEBUG__进行定义,则将对DEBUG(format,...)中的内容按照printf的方式进行输出

#define DEBUG(format,
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值