설명

시간의 차이를 계산합니다. 예제에서는 2007년 7월 1일부터 프로그램을 시작하는 시간 까지의 일 수와 시간 차이를 구합니다.

헤더 time.h
형태 double difftime(time_t time1, time_t time0);
인수 time_t time1 시간 계산에서 빼어지는 시간
time_t time0 시간 계산에서 빼는 시간
반환 double 두 시간의 차이
예제
#include <stdio.h>
#include <time.h>

int main( void)
{
   time_t     tm_st;
   time_t     tm_nd;
   int        tm_day, tm_hour, tm_min, tm_sec;
   double     d_diff;
   struct tm  user_stime;

   user_stime.tm_year   = 2007   -1900;   // 주의 :년도는 1900년부터 시작
   user_stime.tm_mon    = 7      -1;      // 주의 :월은 0부터 시작
   user_stime.tm_mday   = 1;
   user_stime.tm_hour   = 10;
   user_stime.tm_min    = 12;
   user_stime.tm_sec    = 55;
   user_stime.tm_isdst  = 0;              // 썸머 타임 사용 안함

   tm_st = mktime( &user_stime);
   time( &tm_nd);

   d_diff   = difftime( tm_nd, tm_st);

   tm_day   = d_diff / ( 60 *60 * 24);
   d_diff   = d_diff - ( tm_day *60 *60 *24);

   tm_hour  = d_diff / ( 60 *60);
   d_diff   = d_diff - ( tm_hour *60 *60);

   tm_min   = d_diff / 60;
   d_diff   = d_diff - ( tm_min *60);

   tm_sec   = d_diff;

   printf( "2007년 7월 1일부터 지금까지는 %d일 %d시 %d분 %d초 지났음n", tm_day, tm_hour, tm_min, tm_sec);
   return 0;
}
]$ ./a.out
2007년 7월 1일부터 지금까지는 21일 18시 57분 9초 지났음
]$

'도우미' 카테고리의 다른 글

(펌) 쉘스크립트 프로그래밍  (0) 2011.08.10
(펌) 리눅스에서 2G 이상 파일 다루기  (0) 2011.08.10
strncpy  (0) 2011.02.20
헷갈리는 printf  (0) 2011.02.18
울트라에디트 구문강조 파일 wordfile.txt  (0) 2011.02.14

+ Recent posts