들어가면서
1.C에서 형변환은 (자료형)변수명으로 변환을 해왔다.
2.하지만, 이는 컴파일시 타입검사를 실행하지 않기 때문에 안전성 문제가 존재한다.
3.또한, 가독성과 명시성도 떨어지고 casting(형변환) 방법이 제한적이다.
4.C++에서는 이러한 한계를 극복하고 새로운 casting(형변환) 방법인 static_cast가 존재한다.
static_cast<자료형>(변수)
1.static_cast 매개변수에는 형변환할 자료형을, 괄호에는 변환될 변수를 적으면 된다.
#include <iostream>
int main(void)
{
double a = 10.5;
std::cout << "a: " << a << std::endl;
a = static_cast<int>(a);
std::cout << "static_cast<int>(a): " << a << std::endl; //10
std::cout << "static_cast<int>(a) + 1: " << a+1 << std::endl; //11
return 0;
}
'C++' 카테고리의 다른 글
C++ : Uniform initialization(유니폼 초기화)의 중괄호({}) 초기화 방법 (0) | 2023.12.22 |
---|---|
C++ : bool형 변수에 문자상수 바로 입력시 반환되는 값(1일까? 0일까?) (0) | 2023.12.22 |
C++ : 오버플로우(overflow)와 언더플로우(underflow) 이해하기 (0) | 2023.12.19 |
C++ : std::numeric_limits<자료형>::멤버함수() (0) | 2023.12.19 |
C++ : string 자료형이란? (C언어의 char배열과 비교) (0) | 2023.11.22 |