>> Delete No. 10386 article
No. time_t 값을 0으로 지정해서 strftime()으로 변환하면
이상한 시간이...

등록 2000-11-03 18:12:00 By localhost     조회 1
이름 sooree    

		time_t ttm = (time_t)0;
으로 설정한 후,
tm = localtime(&ttm);
strftime(szNowTime,256,"%Y%m%d",tm);
으로 뽑아보면
희한하게도 1970년 1월 1일 09시로 나옵니다.
왜 이럴까요?
 모든 매뉴얼에서 time()은 1970년 1월 1일 00시를 기준으로
경과한 초를 뽑아낸다구 되어있는데요.
 제가 쓰는 리눅스 커널에 문제가 있는걸까요?
아님 모든 분들의 리눅스에서 동일한 문제가 발생할까요?
 너무 희한해서
ttm = -3600 으로 놓고 뽑아보았더니
1970년 1월 1일 08시로 나오네요.
하하...
 man time 해보면 RETURN VALUE 에 다음과 같은 설명이 나오는데요,
        On  success,  the value of time in seconds since the Epoch
       is returned.  On  error,  ((time_t)-1)  is  returned
 근데 ttm = -1 로 해서
strftime(szNowTime,256,"%Y%m%d%H%M%S",tm); 으로 뽑아보면
19700101085959 이라구 나오네요...하핫..황당해라...
 커널 버전은 2.2.14 입니다.
다른 분들은 어떤지 확인 좀 해주시구요...
고수분들의 고견을 듣고 싶습니다.
 그냥 우리 시스템이 이러니 그런가부다..는 전제하에 작업을 할지...
아니면 모든 매뉴얼이 설명하는 19700101000000 을 기준으로 작업할지
고민되네요.
그럼, 시원한 답변을 기다리며...
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved