std:: localtime
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
헤더 파일에 정의됨
<ctime>
|
||
|
std::
tm
*
localtime
(
const
std::
time_t
*
time
)
;
|
||
주어진 에포크 이후의 시간을 std::time_t 값으로부터 지역 시간으로 표현된 달력 시간으로 변환합니다.
목차 |
매개변수
| time | - | 변환할 std::time_t 객체에 대한 포인터 |
반환값
성공 시 정적 내부 std::tm 객체에 대한 포인터, 그렇지 않으면 널 포인터. 이 구조체는 std::gmtime , std::localtime , 그리고 std::ctime 사이에서 공유될 수 있으며, 각 호출 시 덮어쓰여질 수 있습니다.
참고 사항
이 함수는 스레드 안전하지 않을 수 있습니다. Microsoft CRT 구현은 스레드 안전합니다.
POSIX에서는 이 함수가 실패 시 인자가 너무 큰 경우 errno 를 EOVERFLOW 로 설정하도록 요구합니다.
POSIX는
시간대 정보가 이 함수에 의해
tzset
을 호출하는 것처럼 결정된다고 명시합니다. 이는 환경 변수
TZ
을 읽습니다.
예제
#include <ctime> #include <iomanip> #include <iostream> #include <sstream> int main() { setenv("TZ", "/usr/share/zoneinfo/America/Los_Angeles", 1); // POSIX-specific std::tm tm{}; // Zero initialize tm.tm_year = 2020 - 1900; // 2020 tm.tm_mon = 2 - 1; // February tm.tm_mday = 15; // 15th tm.tm_hour = 10; tm.tm_min = 15; tm.tm_isdst = 0; // Not daylight saving std::time_t t = std::mktime(&tm); std::cout << "UTC: " << std::put_time(std::gmtime(&t), "%c %Z") << '\n'; std::cout << "local: " << std::put_time(std::localtime(&t), "%c %Z") << '\n'; }
가능한 출력:
UTC: Sat Feb 15 18:15:00 2020 GMT local: Sat Feb 15 10:15:00 2020 PST
참고 항목
|
에포크 이후 시간을 세계협정시로 표현된 달력 시간으로 변환
(함수) |
|
|
(C23)
(C11)
|
에포크 이후 시간을 지역 시간으로 표현된 달력 시간으로 변환
(함수) |
|
C 문서
for
localtime
|
|