您好,登錄后才能下訂單哦!
歷史上,Unix系統中使用過兩種不同類型的時間值:
1、日歷時間。該值是自UTC(或格林尼治標準時間)以來經歷過的描述累計值。對應的系統基本數據類型是time_t.
2、進程時間。又稱CPU時間,用以度量進程使用的中央處理器資源。用時鐘滴答數來表示,對應的系統基本數據類型是clock_t.
另外,unix系統中還定義了以下幾種表示時間的數據類型:
struct tm : 格式化的分解的時間信息,具有多個字段,包括秒、分、時、日期、月份、年份、星期、一年中的第幾天等。
struct timeval : 由秒和微秒兩個字段,共同表示一個時間,最高精度時微秒。
struct timespec : 有秒和納秒兩個字段,分別以兩種精度表示時間。
表示時間的基本數據類型time_t 、clock_t 和其它幾種表示時間的結構體之間可以通過如下的系統調用函數聯系起來:
time_t time(time_t *t);
int clock_gettime(clockid_t clk_id, struct timespec *tp); int gettimeofday(struct timeval *tv, struct timezone *tz);
初次之外,還有如下一些庫函數可以使用:
transform date and time to broken-down time or ASCII
#include <time.h> char *asctime(const struct tm *tm); char *asctime_r(const struct tm *tm, char *buf); char *ctime(const time_t *timep); char *ctime_r(const time_t *timep, char *buf); struct tm *gmtime(const time_t *timep); struct tm *gmtime_r(const time_t *timep, struct tm *result); struct tm *localtime(const time_t *timep); struct tm *localtime_r(const time_t *timep, struct tm *result); time_t mktime(struct tm *tm);
使用場合:
1.文件的st_atime、st_mtime、st_ctime都是使用數據類型struct timespec.
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。