Programming Languages/C++ & Algorithm
C++ 자료형 확인, 자료형 크기 확인
둠드
2020. 10. 6. 13:36
C++의 자료형(타입)을 확인하거나 크기가 궁금할 때는 어떻게 확인할 수 있는 지 알아보자.
결론부터 말하자면,
먼저 자료형은 <typeinfo> 헤더의 typeid()를 이용한다.
타입의 크기는 sizeof() 함수를 이용하면 구할 수 있다.
아래의 예제 코드를 보자
#include <iostream>
#include <typeinfo>
using namespace std;
int main() {
int a = 5;
bool b = false;
short int c = 15;
double d = 25.12;
cout << "a: " << a << ' ' << typeid(a).name() << ' ' << sizeof(int) << "바이트" << endl;
cout << "b: " << b << ' ' << typeid(b).name() << ' ' << sizeof(bool) << "바이트" << endl;
cout << "c: " << c << ' ' << typeid(c).name() << ' ' << sizeof(c) << "바이트" << endl;
cout << "d: " << d << ' ' << typeid(d).name() << ' ' << sizeof(d) << "바이트" << endl;
return 0;
}
실행결과:
물론 위와 같이 명시적으로 형을 지정해주었을 때는 typeid를 확인할 일은 없겠지만, 컴파일러가 암묵적으로 형변환을 하는 지 확인할 경우에 사용할 수 있다.
예를 들면, 아래와 같이
long e = c;
cout << "e: " << e << ' ' << typeid(e).name() << ' ' << sizeof(e) << "바이트" << endl;
long int 타입 e의 변수에 short int 타입 변수를 대입하면 e는 무슨 타입일까? 가 궁금할 수 있을 것이다.