歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Linux編程---時間相關

Linux編程---時間相關

日期:2017/3/1 9:42:46   编辑:Linux編程

時間相關的東西很難分類.所以我就寫一篇好了.


一.系統時間

1.time函數

time_t time(time_t *tloc);

double difftime(time_t time1,time_t timeo);

time返回系統自1970年1月1日以來,經歷了多少秒的時間.同時可以通過返回值和參數來得到.

difftime則返回兩個參數的時間之差.並且結果是作為雙精度浮點數返回.





2.gettimeofday函數

int gettimeofday(struct timeval *restrict tp,void *restrict tzp);

int settimeofday(const struct timeval * tp,const void *tzp);

int adjtime(const struct timeval *delta,struct timeval *olddelta);

這裡都是指的從1970年1月1日到現在的時間.

並且三個函數都用到了struct timeval結構體.我就說一下.

struct timeval{

time_t tv_sec; 這個表示秒

SUSEconds_t tv_usec 這個表示微秒

}

頭兩個函數的第二個參數一定要寫NULL.不然在Linux下會報錯.



最後一個函數比較有趣,它是用來把系統時鐘調快或者調慢.

簡單來說,如果參數delta是正,那麼加快系統時鐘的步伐.為負則減慢時鐘的步伐.通常以1%的速率來調整.第二個參數返回仍需調整的時間.

這個函數估計只有對時間要求比較高的服務器程序上才有用吧.

Copyright © Linux教程網 All Rights Reserved