// author: hjjdebug
// date: 2024年 03月 01日 星期五 15:29:32 CST
// description: 獲取秒值, 把秒值轉換為時分秒, 及把時分秒轉換成秒值
// 使用就這么簡單.
// 有時候程序輸出需要打印時間信息, 就可以這么干了.
///
#include <stdio.h>
#include <time.h>
int main()
{
?? ?long sec=time(NULL); ?//獲取秒值
?? ?printf("now time:%ld\n",sec);
?? ?struct tm tm;
?? ?localtime_r(&sec,&tm); //轉換到struct tm
?? ?printf("%4d-%02d-%02d %02d:%02d:%02d\n",\
?? ??? ??? ?tm.tm_year+1900,tm.tm_mon+1,tm.tm_mday,\
?? ??? ? ? tm.tm_hour,tm.tm_min,tm.tm_sec); ? //打印年月日時分秒
?? ?long conv_time=mktime(&tm); ?//由年月日時分秒轉換到秒值,實際是經過一系列非線性運算
?? ?printf("conv time:%ld\n",conv_time); //打印秒值,可判斷與原始值一致
?? ?return 0;
}
執行結果:
?./localtime
now time:1709278291
2024-03-01 15:31:31
conv time:1709278291
精確到ms或者us也可以,那就要用gettimeofday()函數來獲取時間了.