【기 능】 time_t 형식의 시간정보를 tm구조체 정보로 변환
【소 속】 time.h
#include <time.h>
【서 식】
struct tm *localtime(const time_t *timeinfo);
【설 명】
timeinfo에 들어있는 데이터를 현지시간으로 변환해서 tm구조체에 넣어준다.
timeinfo에 들어있는 데이터는 time함수를 사용하여 취득한 time_t 형식의 데이터 이어야 한다.
【인 수】
const time_t *timeinfo : time_t 형식 시간 데이터
【리턴 값】
변환된 데이터가 보존 되어 있는 tm 구조체의 어드레스
구조체 tm은 time.h안에서 선언되어 있고 다음과 같은 구조를 가진다.
struct tm {
int tm_sec; /* 초 [0-61] 최대 2초까지 윤초를 고려 */
int tm_min; /* 분 [0-59] */
int tm_hour; /* 시 [0-23] */
int tm_mday; /* 일 [1-31] */
int tm_mon; /* 월 [0-11] 0부터 시작된다 */
int tm_year; /* 년 [1900년 부터의 경과년수] */
int tm_wday; /* 요일 [0:일 1:월 ... 6:토] */
int tm_yday; /* 년내의 연속번호 [0-365] 0부터 시작한다*/
int tm_isdst; /* 서머타임을 사용하지 않을때는 0 */
};
【사용 예】
#include <stdio.h>
#include <time.h>
int main(void)
{
time_t timeinfo;
struct tm *kt;
char *wday[] = {"일","월","화","수","목","금","토"};
/* 현재시간의 취득 */
time(&timeinfo);
/* 현재시간을 한국시간으로 변환 */
kt = localtime(&timeinfo);
printf("\n한국시간\n");
printf("년 : %d\n",kt->tm_year+1900);
printf("월 : %d\n",kt->tm_mon+1);
printf("일 : %d\n",kt->tm_mday);
printf("요일: %s\n",wday[kt->tm_wday]);
printf("시 : %d\n",kt->tm_hour);
printf("분 : %d\n",kt->tm_min);
printf("초 : %d\n",kt->tm_sec);
return 0;
}
【결 과】
한국시간
년 : 2024
월 : 7
일 : 23
요일: 화
시 : 22
분 : 27
초 : 48