시간대를 위한 변수와 함수들
변수 : char *tzname[2]
- tzname 배열은 사용자가 선택한 표준 시간대와 일광절약시간대의 이름들을 표준 세-문자로 가진 두 개의 문자열을 저장한다. tzname[0]은 표준시간대(예를 들어 "EST")의 이름이고, tzname[1]은 일광절약시간이 사용될 때 시간대를 위한 이름이다(예를 들어, "EDT").
- 이들은 TZ 환경변수로부터 std 와 dst문자열과 같다. tzname 배열은 tzset, ctime, strftime, mktime, 또는 localtime이 호출될때마다 TZ 환경변수로 초기화된다.
함수 : void tzset(void)
- tzset함수는 TZ 환경변수의 값으로 tzname변수를 초기화한다. 이것은 시간대에 의존하는 다른 시간 변환 함수들에서 사용될 때 자동적으로 호출되기 때문에 당신이 직접 당신의 프로그램을 통해서 이것을 부를 필요가 없을 것이다.
다음의 변수들은 유닉스 시스템 V와의 호환성을 위해서 정의되었다. 이들 변수들을 localtime 함수를 호출함으로써 설정된다.
변수 : longint timezone
- 이것은 그리니치 표준시와 지역 표준 시간사이의 차이를 초단위로 저장한다. 예를 들어, 미국에서 동부시간대의 값은 5*60*60이다.
변수 : int daylight
- 이 변수는 만일 표준 미국 일광절약시간 규칙이 적용된다면 0이 아닌 값을 가진다.
시간관련 구조체
struct tm {
int tm_sec; /* seconds after the minute - [0,59] */
int tm_min; /* minutes after the hour - [0,59] */
int tm_hour; /* hours since midnight - [0,23] */
int tm_mday; /* day of the month - [1,31] */
int tm_mon; /* months since January - [0,11] */
int tm_year; /* years since 1900 */
int tm_wday; /* days since Sunday - [0,6] */
int tm_yday; /* days since January 1 - [0,365] */
int tm_isdst; /* daylight savings time flag */
};
시간관련 함수
사용 예제
gmt_time = time (NULL);
lt = gmtime(&gmt_time);
local_time = mktime(lt);
TIMEZONE 변수는 위의 gmt_time - local_time 값과 같다.
'프로그래밍 > C' 카테고리의 다른 글
뮤텍스 (0) | 2016.09.15 |
---|---|
헥사값 메모리 저장 진실 (0) | 2015.10.15 |
1Byte 씩 복사 (0) | 2015.09.16 |