项目模块二:日志宏

一、代码展示

二、补充知识

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

相关推荐
m0_38074387几秒前
C++中的freopen的用法实例详解
开发语言·c++
Escalating_xu31 分钟前
【Python】基础语法(1):常量、变量、类型、输入输出与运算符
开发语言·python
jimy11 小时前
polymorph.cpp里面的“析构函数、智能指针”问题
开发语言·c++
m0_380743871 小时前
PHP 8.3 缓存清除不生效怎么排查
开发语言·php
朝朝辞暮i1 小时前
C++ 第 6 课:switch —— 多状态选择
开发语言·c++·算法
小凡geo1 小时前
本地商家 GEO:用脚本一键生成 FAQPage 结构化数据,让 AI 切片更稳
开发语言·人工智能·python·microsoft·搜索引擎·ai
朝朝辞暮i2 小时前
C++ 第 4 课:if / else —— 让程序自己做决定
开发语言·c++
波力海苔夹心脆6752 小时前
C# 值类型与引用类型详解:存储位置、赋值机制、参数传递、相等比较、装箱拆箱与常见陷阱
开发语言·jvm·经验分享·笔记·c#·.net
m0_380743872 小时前
Qt中导航栏实现的详细指南
开发语言·c++
mhmh1232 小时前
Python 对象模型与数据模型:魔术方法、描述符与元类深度解析
开发语言·python