主要观点总结
本文介绍了一种使用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': 表示转义序列的结
………………………………