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"
}