std::get_time

std::get_time (날짜·시간 추출 조작자)

문자 입력을 날짜·시간 값으로 파싱해 std::tm 객체에 저장하는 조작자예요. C++11부터 있어요.

출처: cppreference

본문

<iomanip> 헤더에 정의돼 있어요.

template< class CharT >
/*unspecified*/ get_time( std::tm* tmb, const CharT* fmt );

in >> get_time(tmb, fmt) 표현식에서, 입력 스트림 in에 현재 적용된 로케일의 std::time_get 패싯을 따라 형식 문자열 fmt에 따라 문자 입력을 날짜·시간 값으로 파싱해요. 결과 값은 tmb가 가리키는 std::tm 객체에 저장돼요.

매개변수

  • tmb — 결과가 저장될 std::tm 객체를 가리키는 유효한 포인터.
  • fmt — 변환 형식을 지정하는 null로 끝나는 CharT 문자열에 대한 포인터. 형식 문자열은 0개 이상의 변환 지정자, 공백 문자, 일반 문자로 구성돼요.

반환값

in >> get_time(tmb, fmt)in을 돌려주는 미지정 타입 객체.

예제

#include <iostream>
#include <iomanip>
#include <sstream>
#include <ctime>

int main()
{
    std::istringstream s("2024-03-15");
    std::tm t{};
    s >> std::get_time(&t, "%Y-%m-%d");
    std::cout << 1900 + t.tm_year << ' ' << 1 + t.tm_mon << ' ' << t.tm_mday << '\n';
    // "2024 3 15"
}

더 알아보기 (Learn more)

cppreference