12.24.2011

Linux的difftime()函式

這一次為什麼要介紹Linux C的difftime()這個函式?? 第一、因為前一陣子工作上有計算時間差的需求;第二、我的參考書上並沒有這個function的範例。基於以上兩點,所以就乾脆自己練習一下,寫一個吧!!

功能說明:計算時間差距。

標頭檔:#include <time.h>

函式宣告:double difftime(time_t time1, time_t time0);

函式說明:difftime()用來計算引數time1和time0所代表的時間差距。結果以double型態精確值傳回。兩個引數的時間皆是以1970年一月01日 00:00:00算起的UTC時間。

回傳值:傳回精確地時間差距秒數。

範例:
#include <stdio.h>
#include <time.h>
#include <string.h>

int main(void)
{
    time_t tTemp1, tTemp2;
    int a = 0, b = 0;
    double dSeconds = 0;

  //memset(&tTemp1, 0, sizeof(time_t));
    time(&tTemp1);
    printf("1. %s", ctime(&tTemp1));

    for(a = 0; a < 10000; a++)
        for(b = 0; b < 10000; b++)

  //memset(&tTemp2, 0, sizeof(time_t));
    time(&tTemp2);
    printf("2. %s", ctime(&tTemp2));

    dSeconds = difftime(tTemp1, tTemp2);
    printf("difftime() = %f \n", dSeconds);

    return 0;
}
執行結果: 把mark掉的註解移除會得到不一樣的結果喔!!

沒有留言:

張貼留言