linux時間 一 獲取系統時間

2021-09-30 05:42:40 字數 1532 閱讀 1027

獲取系統時間

#include

time_t time(null);

返回從2023年1月一日0時0分0秒 到現在的秒數.

可以用time返回的值換算成年月日時分等使用者友好的表示方法。

time有乙個結構 struct tm,用於儲存當前的日期。

結構tm的定義為

struct tm

int tm_sec;

int tm_min;

int tm_hour;

int tm_mday;

int tm_mon;

int tm_year;

int tm_wday;

int tm_yday;

int tm_isdst;

int tm_sec 代表目前秒數,正常範圍為0-59,但允許至61秒

int tm_min 代表目前分數,範圍0-59

int tm_hour 從午夜算起的時數,範圍為0-23

int tm_mday 目前月份的日數,範圍01-31

int tm_mon 代表目前月份,從一月算起,範圍從0-11

int tm_year 從1900 年算起至今的年數

int tm_wday 一星期的日數,從星期一算起,範圍為0-6

int tm_yday 從今年1月1日算起至今的天數,範圍為0-365

int tm_isdst 日光節約時間的旗標

使用函式 struct tm * gtime(time_t * time)

該函式返回格林威治時間。

使用函式 struct tm * localtime(time_t * time)

獲取當前時間時區的時間

例如下面這個函式

//讀取系統時間

extern int set_read_time_bgstage( int set_time)

time_t t;

struct tm * current_time;

tzset();//設定時區

t = time(null);

if (t < 0)

printf("in set_read_time_bgstage: set time error/n");

return -1;

//獲取當前時間

current_time = localtime(&t);

if (current_time == null)

printf("in set_read_time_bgstage: localtime error/n");

return -1;

set_time[0] = current_time->tm_year + 1900;

set_time[1] = current_time->tm_mon + 1;

set_time[2] = current_time->tm_mday;

set_time[3] = current_time->tm_hour;

set_time[4] = current_time->tm_min;

return 0;

linux 獲取系統時間

通過以下函式可以統計裝置開機時間,關機時間,離線時間,距離1970.1.0.0.0的秒數。統計裝置的執行狀況!1.獲取系統當前時間距1970.1.0.0.0的秒數。通過獲取的秒數方便計算嵌入式裝置的離線時間。include void main 3.gettime 獲取當前系統時間 函式名稱 gett...

linux獲取系統當前時間

1.linux下與時間有關的結構體 struct timeval 其中tv sec是由凌晨開始算起的秒數,tv usec則是微秒 10e 6 second struct timezone tv minuteswest是格林威治時間往西方的時差,tv dsttime則是時間的修正方式。struct t...

Linux核心獲取系統時間

在linux核心中,常常使用do gettimeofday 函式來得到精確的系統執行時間,尤其在嵌入式中非常常見。很多程式執行,不需要獲取到年月日等資訊,但是需要獲取高精度的系統時間,可以使用這個函式。函式功能和c標準庫中gettimeofday 用法相同。下面 拿去使用吧。include unsi...