歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> LINUX 中關於struct timeval 的解釋

LINUX 中關於struct timeval 的解釋

日期:2017/3/3 12:46:53   编辑:Linux技術
轉自:/content/3380299.html
問題如下:
在debian linux的man頁中對gettimeofday函數的說明中,有這樣一個說明:
DESCRIPTION
The functions gettimeofdayand settimeofday can get and set the time as
well as a timezone. The tvargument is a timeval struct, as specified
in<sys/time.h>:
struct timeval {
time_t tv_sec;
suseconds_t tv_usec;
};
其中對tv_usec的說明為時間的毫秒部分。 而在實際中,該函數以及Linux內核返回的timeval
類型的時間值,tv_usec代表的是微秒精度(10的-6次方秒)。
測試代碼如下:
#include <stdio.h>
#include <sys/time.h>
#include <time.h>
int gettimeofday(structtimeval *tv, struct timezone *tz);
int main(int argc,char * argv[]){
struct timeval tv;
while(1){
gettimeofday(&tv,NULL);
printf("time%u:%u\n",tv.tv_sec,tv.tv_usec);
sleep(2);
}
return 0;
}
返回結果為:
evil@dcenter:~/tmp$ ./a.out
time 1142077839:903605
time 1142077841:910129
time 1142077843:920155
time 1142077845:930180
time 1142077847:940205
time 1142077849:950231
time 1142077851:960256
time 1142077853:970280
time 1142077855:980307
time 1142077857:990331
Copyright © Linux教程網 All Rights Reserved