Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++의 유형 변환

<시간/>

여기서 우리는 C++에 존재하는 유형 변환 기술이 무엇인지 볼 것입니다. 유형 변환에는 크게 두 가지 유형이 있습니다. 암시적 및 명시적.

  • 암시적 유형 변환

    이를 자동 유형 변환이라고도 합니다. 이것은 사용자의 외부 트리거 없이 컴파일러에 의해 수행됩니다. 하나의 표현식에 둘 이상의 데이터 유형이 있는 경우 수행됩니다.

    모든 데이터 유형은 큰 변수의 데이터 유형으로 업그레이드됩니다.

bool -> char -> short int -> int -> unsigned int -> long -> unsigned -> long long -> float -> double -> long double

암시적 변환에서는 일부 정보가 손실될 수 있습니다. 표지판이 분실될 수 있습니다.

예시

#include <iostream>
using namespace std;
int main() {
   int a = 10;
   char b = 'a';
   a = b + a;
   float c = a + 1.0;
   cout << "a : " << a << "\nb : " << b << "\nc : " << c;
}

출력

a : 107
b : a
c : 108

명시적 유형 변환

이를 유형 캐스팅이라고도 합니다. 여기에서 사용자는 결과를 특정 데이터 유형으로 형변환할 수 있습니다. C++에서는 괄호 안에 표현식을 사용하거나 static_cast 또는 dynamic_cast를 사용하는 두 가지 방법으로 이를 수행할 수 있습니다.

예시

#include <iostream>
using namespace std;
int main() {
   double x = 1.574;
   int add = (int)x + 1;
   cout << "Add: " << add;
   float y = 3.5;
   int val = static_cast<int>(y);
   cout << "\nvalue: " << val;
}

출력

Add: 2
value: 3