가끔식 현재시간을 구해야 할때가 있습니다.
여러 방식이 있겠지만 그냥 간단히 현재 날짜, 시간 등 구할때 편하게 쓰려구 만든 함수입니다.
윤년이나 요일, 몇번째 날 등등 나름 쓰임새가 있습니다.
표준 C 라서 웬만한 곳에서는 다 돌아갈껍니다. 물론 테스트는 못했습니다.
그냥 C 에서도 모바일 wipi C 에서도 잘되는거 같네요.
사용법은 변수명을 써주시면 변수에 대입됩니다.
사용법
getCurrentTime( nYear, nMonth, nDay, nHour , nMin , nSec, nWday ,nYearDay, nSummerTime) ;
/* 대입할 변수를 입력*/
void getCurrentTime( int* nYear, int* nMonth, int* nDay, int* nHour , int* nMin , int* nSec, int* nWday ,int* nYearDay, int* nSummerTime) {
time_t timer;
struct tm *today;
timer = time(NULL); // 현재 시각을 초 단위로 얻기
today = localtime(&timer); // 초 단위의 시간을 분리하여 구조체에 넣기
if ( nYear )
*nYear =( today->tm_year + 1900);//현재 년
if ( nMonth )
*nMonth = (today->tm_mon + 1);//현재 월
if ( nDay )
*nDay = (today->tm_mday);//현재 일
if ( nHour )
*nHour= ( today->tm_hour);//현재 시
if ( nMin )
*nMin = (today->tm_min);//현재 분
if ( nSec )
*nSec =(today->tm_sec);//현재 초
if ( nWday )//현재 요일, 일요일=0, 월요일=1, 화요일=2, 수요일=3, 목요일=4, 금요일=5, 토요일=6
*nWday = (today->tm_wday);
if ( nYearDay )
*nYearDay = (today->tm_yday);//올해 몇 번째 날, 1월 1일은 0, 1월 2일은 1
if ( nSummerTime )
*nSummerTime = (today->tm_isdst);//서머타임 , 0 이면 서머타임 없음
}