01-打印输出信息
语句printf("%s %s %d\n", __FILE__, __FUNCTION__, __LINE__);
在上面的代码中,printf("%s %s %d\n", __FILE__, __FUNCTION__, __LINE__);
是一种调试手段,常用于输出程序运行时的文件名、函数名和代码行号,以便于追踪程序的执行路径和定位问题。
参数说明:
-
__FILE__
:- 是一个预定义的宏,表示当前代码所在的源文件名。
- 输出的内容是文件的完整路径或文件名,取决于编译器的实现。
-
__FUNCTION__
:- 是一个扩展的预定义标识符,表示当前代码所在的函数名。
- 在调试和日志记录中,可以显示执行该代码片段的具体函数名称。
-
__LINE__
:- 是一个预定义的宏,表示当前代码行号。
- 输出的内容是代码中该语句所在的具体行号。
作用:
- 调试信息输出:
- 输出文件名、函数名和行号,帮助开发者确认当前代码执行的位置。
- 运行路径跟踪:
- 如果程序在复杂的逻辑中运行,输出这些信息可以帮助理解程序执行的顺序。
- 快速问题定位:
- 当程序崩溃或产生错误时,通过输出的文件名、函数名和行号,可以迅速定位问题发生的位置。
示例输出:
假设这段代码位于文件 main.c
的 15 行,函数 main
中。运行时会输出类似:
main.c main 15
每次执行到这句 printf
,它都会输出当时的文件名、函数名和行号,动态反映程序的执行进度。