前言
在C语言中,预定义宏是由编译器提供的一组特殊标识符,可以在程序中直接使用,无需进行额外的定义。
预定义宏可以提供有关源文件、行号、日期、时间和函数名等信息,对于调试和日志记录非常有用。
一、人物简介
- 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。
- 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。
二、功能介绍
以下是本教程中介绍的预定义宏:
- FILE:当前源文件的文件名。
- LINE:当前源文件中的行号。
- DATE:当前日期。
- TIME:当前时间。
- func:当前函数名。
三、使用场景
预定义宏在以下场景中非常有用:
- 调试信息:通过__FILE__和__LINE__宏,您可以在调试过程中打印当前源文件和行号,帮助定位代码问题。
- 日志记录:使用__DATE__和__TIME__宏,您可以在日志中记录当前日期和时间,方便追溯日志发生的时刻。
- 函数名标识:通过__func__宏,您可以在函数中输出当前函数的名字,有助于代码审查和日志记录。
四、示例代码
- 下面是一个示例代码,演示了如何使用预定义宏:
#include <stdio.h>int main() {// __FILE__:当前源文件的文件名printf("当前源文件名:%s\n", __FILE__);// __LINE__:当前源文件中的行号printf("当前行号:%d\n", __LINE__);// __DATE__:当前日期printf("当前日期:%s\n", __DATE__);// __TIME__:当前时间printf("当前时间:%s\n", __TIME__);// __func__:当前函数名printf("当前函数名:%s\n", __func__);return 0;
}
- 运行结果
当前源文件名:pre_macro.c
当前行号:8
当前日期:Jun 30 2023
当前时间:15:04:09
当前函数名:main
小结
通过这篇文章,我们学会了
1、常见的几个预定义宏的用法和使用场景
📢欢迎各位 👍点赞 ⭐收藏 📝评论,如有错误请留言指正,非常感谢!