1、为什么要获取编译时间
编译时间可以作为代码或固件的版本,以此来规范代码的版本,通过时间来约束,可以通过将编译的时间打印出来或写入某个内存区域中被读取来展现版本信息。
2、如何获取编译的时间
在C语言中,可以使用预编译指令__DATE__
和__TIME__
来获取编译时间。这两个宏定义分别表示编译日期和编译时间。可以将它们组合起来,形成一个字符串,表示编译的完整时间,此方法适用于大部分编译器。
#include <stdio.h>
#include <time.h>
int main()
{
printf("Compiled on %s at %s\n", __DATE__, __TIME__);
return 0;
}
若想保留到某个变量中可以
const char* compile_time = __DATE__ " " __TIME__;
但要注意此时间是编译时间,并不是代码运行时间。