timespec

struct timespec定義

頭檔案:

#include <time.h>

結構體說明:

struct timespec{

__time_t tv_sec; /*seconds 秒*/

long int tv_nsec; /*nanoseconds 納秒*/

}

更加清晰明了的寫法,當然以上的寫法也沒有錯:

struct timespec

{

time_t tv_sec; /*second*/

long tv_nsec;/*nanosecond*/

}

舉一個簡單的小例子,就叫spec.c:

#include <time.h>

#include <memory.h>

#include <stdio.h>

int main()

{

struct timespec time;

memset(&time, 0, sizeof(time));

clock_gettime(CLOCK_REALTIME, &time);

printf("%d----->%d\n", time.tv_sec, time.tv_nsec);

return 0;

}

自己編譯即可知道結果,但又兩點說明:

1、這裡的秒和納秒數是自1970年1月1號00:00:00開始計時,到現在所經歷的時間。

2、在編譯的時候,如果gcc spec.c -o spec沒有通過的話,加上-lrt在進行編譯,表示此前沒有載入該庫。

與struct timeval 唯一的不同,將結構體內成員微秒變換成納秒,提高了精確度。其次,struct timeval 還提供了諸多的函式,諸如:time(),gettimeofday(),localtime(),gmtime(),mktime(),asctime(),ctime()和strftime()的時間函式,同時又大量的格式轉換,滿足我們所需要的格式。

相關詞條

相關搜尋

熱門詞條

聯絡我們