時間プログラミング受講ノート


カレンダー時間:1970年1月1日0時から現在までの説明
ヘッダファイル:time.h
1.取得カレンダ時間

time_t time(time_t *tloc)

戻り値とパラメータの指定time_tはカレンダー時間です
例:

time_t t=time(NULL);

2.時間変換
Greenwich mean timeに変換

struct tm *gmtime(const time_t *timep)

ローカル時間に変換

struct tm *localtime(const time_t *timep)

Greenwich mean timeに変換

struct tm{
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;//     
int tm_mon;
int tm_year;//tm_year+1900=  
int tm_wday;//     
int tm_yday;//     
int tm_isdst;//      
};

文字列に変換

char *asctime(const struct tm *tm)

Sat Jul 30 08:23:33 2005
ローカル文字列に変換

char *ctime(const time_t *timep)

3.早朝から現在までの時間差を取得

int gettimeofday(struct timeval *tv, struct timezone *tz)

struct timeval{
int tv_sec;//  
int tv_usec;//   
}

通常2回gettimeofday計算プログラムが実行される時間

struct timeval start, end;
float timeuse;

gettimeofday(&start, NULL);
function();
gettimeofday(&end, NULL);

timeuse=1000000 *(end.tv_sec - start.tv_sec)+end.tv_usec-start.tv_usec;
timeuse/=1000000l

printf("Used time: %f
", timeuse);

4.遅延実行
睡眠seconds秒

unsigned int sleep(unsigned int seconds) 

スリープusecマイクロ秒

void sleep(unsigned long usec)