difftime() — 時差の計算
フォーマット
#include <time.h>
double difftime(time_t time2, time_t time1);
言語レベル
ANSI
スレッド・セーフ
はい
説明
difftime() 関数は time2 と time1 の差 (秒数) を計算します。
戻り値
difftime() 関数は、time1 から time2 への経過時間 (秒数) を倍精度の数値として戻します。型 time_t は <time.h> で定義されます。
例
次の例は difftime() を使用するタイミング・アプリケーションを示しています。2 から 10 000 までの素数を検索するのにかかる平均時間を計算します。
#include <time.h>
#include <stdio.h>
#define RUNS 1000
#define SIZE 10000
int mark[SIZE];
int main(void)
{
time_t start, finish;
int i, loop, n, num;
time(&start);
/* This loop finds the prime numbers between 2 and SIZE */
for (loop = 0; loop < RUNS; ++loop)
{
for (n = 0; n < SIZE; ++n)
mark [n] = 0;
/* This loops marks all the composite numbers with -1 */
for (num = 0, n = 2; n < SIZE; ++n)
if ( ! mark[n])
{
for (i = 2 * n; i < SIZE; i += n)
mark[i] = -1;
++num;
}
}
time(&finish);
printf("Program takes an average of %f seconds "
"to find %d primes.¥n",
difftime(finish,start)/RUNS, num);
}
/******************** Output should be similar: *****************
The program takes an average of 0.106000 seconds to find 1229 primes.
*/
関連情報
- asctime() — 時間から文字ストリングへの変換
- asctime_r() — 時間から文字ストリングへの変換 (再始動可能)
- ctime() — 時間から文字ストリングへの変換
- ctime64() — 時間から文字ストリングへの変換
- ctime64_r() — 時間から文字ストリングへの変換 (再始動可能)
- ctime_r() — 時間から文字ストリングへの変換 (再始動可能)
- difftime64() — 時差の計算
- gmtime() — 時間の変換
- gmtime64() — 時間の変換
- gmtime64_r() — 時間の変換 (再始動可能)
- gmtime_r() — 時間の変換 (再始動可能)
- localtime() — 時間の変換
- localtime64() — 時間の変換
- localtime64_r() — 時間の変換 (再始動可能)
- localtime_r() — 時間の変換 (再始動可能)
- mktime() — 地方時の変換
- mktime64() — 地方時の変換
- strftime() — 日付/時刻からストリングへの変換
- time() — 現在時刻の判別
- time64() — 現在時刻の判別
- <time.h>