项目模块二:日志宏

一、代码展示

二、补充知识

1、LOG(level, format, ...)

format 是用于宏识别格式化,类似于 printf("%s", str); 里面的 "%s"

... 不定参,传入宏的参数除了 level, format, 还有不确定个数的参数。

2、红色 \

由于宏只能写在一行,用 \ 对换行进行转义就能表示同一行。

3、获取时间

先用函数 time() 获取 time_t 类型,再用函数 localtime 获取结构体指针 struct tm*,最后用函数 strftime 获取结构体里面的时间。

4、FILE 和 LINE

FILE 表示当前程序运行的文件名。

LINE 表示当前程序运行到的行号。

5、##VA_ARGS

VA_ARGS 是对 LOG(level, format, ...) 传入的不定参的使用。

表示可以忽略format

相关推荐
nice_lcj5202 小时前
ThreadLocal 入门:它是怎么隔离数据的、为什么会导致内存泄漏
java·开发语言·后端·面试·并发编程·内存泄漏·threadlocal
紧跟先前的步伐2 小时前
Go AI Agent 实战 28|Agent 的预算、超时与停止条件
开发语言·人工智能·后端·ai·golang
bksczm3 小时前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
春涧草茶3 小时前
慢就是快16-1协程
开发语言·前端·python
Dovis(誓平步青云)4 小时前
启元 T1 Pro 人机相声搭档:语音-触摸双通道的启元机器人节奏引擎设计
开发语言·前端·javascript·microsoft·交互
做科研的周师兄4 小时前
【R语言实战】MixSIAR 氢氧同位素水源解析全流程:从混合空间校验到贝叶斯 MCMC 收敛诊断(后附完整代码)
java·大数据·开发语言
.痞老板.5 小时前
java ee--计算机是如何工作的
java·开发语言·java-ee
奇树谦5 小时前
Qt Quick 图片加载与 GPU 纹理机制详解:QImage、QQuickTextureFactory、QSGTexture 与异步加载
开发语言·qt·系统架构
青梅味猪大肠6 小时前
【操作系统-60】临近适应算法
java·linux·开发语言·嵌入式硬件·算法·操作系统
starzy19907 小时前
深入理解Scala可变Map:动态构建场景下的性能与设计权衡
开发语言·scala