1. 程式人生 > >linux下用C語言獲取本地時間

linux下用C語言獲取本地時間

一個小專案需要以系統時間(精確到微秒)為變數建立檔名,在網上搜索資料,在stackoverflow上找到了需要的東西,記下來備用


#include <sys/time.h>
#include <time.h>
#include <stdio.h>

int get_localtime(char *output)
{
struct timeval tv;
time_t nowtime;
struct tm *nowtm;
char tmbuf[64], buf[64];
gettimeofday(&tv, NULL);
nowtime = tv.tv_sec;
nowtm = localtime(&nowtime);
strftime(tmbuf, sizeof tmbuf, "%Y%m%d_%H_%M_%S", nowtm);
snprintf(buf, sizeof buf, "%s_%06ld", tmbuf, tv.tv_usec);
printf("local time : %s\n",buf);
    return 1;
}

最後的輸出如下圖所示