今天看啥  ›  专栏  ›  嵌入式微处理器

如何让C程序打印的log多一点色彩?(超级实用)

嵌入式微处理器  · 公众号  · 科技自媒体  · 2024-08-21 12:00
    

主要观点总结

本文介绍了一种使用ANSI转义码在终端上设置文本样式和颜色的方法,包括字体显示语法说明和举例。还介绍了一个宏定义和打印信息封装的便捷方式,以及如何通过这种方式美化程序的打印log,并提供了完整代码。

关键观点总结

关键观点1: ANSI转义码的使用

文章中详细介绍了如何使用ANSI转义码来设置终端上文本的样式和颜色,包括字体显示语法、举例以及不同终端和操作系统的效果差异。

关键观点2: 宏定义和打印信息封装

文章介绍了如何将常用的颜色和样式定义为宏,并使用这些宏来封装打印信息,以便更直观地查看log。

关键观点3: 程序打印log的美化

文章展示了如何通过使用上述方法美化程序的打印log,以更直观的方式显示通信信令的关键字段,如msgType和len。

关键观点4: 完整代码提供

文章最后提供了完整的代码示例,包括协议消息的格式定义和打印函数的实现,以及如何使用这些功能进行测试的示例。


文章预览

接着上一篇文章《 由字节对齐引发的一场“血案” 》 在平常的调试中,printf字体格式与颜色都是默认一致的。  如果可以根据log信息的重要程度,配以不同的颜色与格式,可以很方便的查找到要点。 1、printf字体显示语法说明 printf (“\ 033 [显示方式;字体颜色;背景颜色m 字符串 \ 033 [ 0 m” ); 语法说明: 第一个**\033[**表示转义序列的开始,设置随后的字体格式 转义序列是以 ESC 开头,用 \033 完成相同的工作(ESC 的 ASCII 码用十进制表示就是 27 , = 用八进制表示的 33 )。 显示方式: 0:默认值  1:高亮 、22:非粗体、4:下划线、24:非下划线、5:闪烁、25:非闪烁、7:反显、27:非反显 字体颜色 30: 黑   31: 红 32: 绿 33: 黄 34: 蓝 35: 紫 36: 深绿 37: 白色 背景颜色 40: 黑 41: 红 42: 绿 43: 黄 44: 蓝 45: 紫 46: 深绿 47: 白色 红色  'm': 表示转义序列的结 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览