difftime() — 시차 계산

형식

#include <time.h>
double difftime(time_t time2, time_t time1);

언어 레벨

ANSI

스레드세이프

설명

difftime() 함수는 time2time1 간의 차이(초)를 계산합니다.

리턴값

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.
*/