산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C++ 유형 변환

C++ 유형 변환

이 자습서에서는 예제를 통해 C++ 유형 변환의 기본 사항을 배웁니다.

C++를 사용하면 한 유형의 데이터를 다른 유형의 데이터로 변환할 수 있습니다. 이것을 유형 변환이라고 합니다.

C++에는 두 가지 유형의 변환이 있습니다.

  1. 암시적 변환
  2. 명시적 변환(타입 캐스팅이라고도 함)
<시간>

암시적 유형 변환

컴파일러에서 자동으로 수행되는 형식 변환을 암시적 형식 변환이라고 합니다. 이러한 유형의 변환을 자동 변환이라고도 합니다.

암시적 유형 변환의 두 가지 예를 살펴보겠습니다.

<시간>

예시 1:int에서 double로의 변환

// Working of implicit type-conversion

#include <iostream>
using namespace std;

int main() {
   // assigning an int value to num_int
   int num_int = 9;

   // declaring a double type variable
   double num_double;
 
   // implicit conversion
   // assigning int value to a double variable
   num_double = num_int;

   cout << "num_int = " << num_int << endl;
   cout << "num_double = " << num_double << endl;

   return 0;
}

출력

num_int = 9
num_double = 9

프로그램에서 int를 할당했습니다. 데이터를 double로 변수.

num_double = num_int;

여기서 int 값은 자동으로 double로 변환됩니다. num_double에 할당되기 전에 컴파일러에 의해 변하기 쉬운. 이것은 암시적 유형 변환의 예입니다.

<시간>

예시 2:double에서 int로 자동 변환

//Working of Implicit type-conversion

#include <iostream>
using namespace std;

int main() {

   int num_int;
   double num_double = 9.99;

   // implicit conversion
   // assigning a double value to an int variable
   num_int = num_double;

   cout << "num_int = " << num_int << endl;
   cout << "num_double = " << num_double << endl;

   return 0;
}

출력

num_int = 9
num_double = 9.99

프로그램에서 double을 할당했습니다. 데이터를 int로 변수.

num_double = num_int;

여기에서 double 값은 자동으로 int으로 변환됩니다. num_int에 할당되기 전에 컴파일러에 의해 변하기 쉬운. 이것은 또한 암시적 유형 변환의 예입니다.

참고: int 이후 위의 예에서 소수점 이하 자릿수는 잘립니다.

<시간>

변환 중 데이터 손실(변환 축소)

위의 예에서 보았듯이 한 데이터 유형에서 다른 데이터 유형으로 변환하면 데이터가 손실되기 쉽습니다. 이것은 더 큰 유형의 데이터가 더 작은 유형의 데이터로 변환될 때 발생합니다.

<그림> <시간>

C++ 명시적 변환

사용자가 수동으로 데이터를 한 유형에서 다른 유형으로 변경하는 것을 명시적 변환이라고 합니다. . 이러한 유형의 변환을 유형 캐스팅이라고도 합니다. .

C++에서 명시적 변환을 사용할 수 있는 세 가지 주요 방법이 있습니다. 그들은:

  1. C 스타일 유형 캐스팅(캐스트 표기법이라고도 함) )
  2. 함수 표기법(이전 C++ 스타일 유형 캐스팅이라고도 함) )
  3. 유형 변환 연산자
<시간>

C 스타일 유형 주조

이름에서 알 수 있듯이 이러한 유형의 캐스팅은 C 프로그래밍 언어에서 선호됩니다. . 캐스트 표기법이라고도 합니다. .

이 스타일의 구문은 다음과 같습니다.

(data_type)expression;

예를 들어,

// initializing int variable
int num_int = 26;

// declaring double variable
double num_double;

// converting from int to double
num_double = (double)num_int;
<시간>

함수 스타일 캐스팅

데이터를 한 유형에서 다른 유형으로 변환하기 위해 표기법과 같은 기능을 사용할 수도 있습니다.

이 스타일의 구문은 다음과 같습니다.

data_type(expression);

예를 들어,

// initializing int variable
int num_int = 26;

// declaring double variable
double num_double;

// converting from int to double
num_double = double(num_int);
<시간>

예시 3:유형 캐스팅

#include <iostream>

using namespace std;

int main() {
    // initializing a double variable
    double num_double = 3.56;
    cout << "num_double = " << num_double << endl;

    // C-style conversion from double to int
    int num_int1 = (int)num_double;
    cout << "num_int1   = " << num_int1 << endl;

    // function-style conversion from double to int
    int num_int2 = int(num_double);
    cout << "num_int2   = " << num_int2 << endl;

    return 0;
}

출력

num_double = 3.56
num_int1   = 3
num_int2   = 3

C 스타일 유형 변환을 모두 사용했습니다. 및 유형 변환을 위한 함수 스타일 캐스팅 그리고 그 결과를 보여주었다. 동일한 작업을 수행하기 때문에 둘 다 동일한 출력을 제공합니다.

<시간>

유형 변환 연산자

이 두 가지 유형 캐스팅 외에도 C++에는 유형 변환을 위한 네 가지 연산자도 있습니다. 유형 변환 연산자라고 합니다. . 그들은:

이 캐스트에 대해서는 이후 자습서에서 배울 것입니다.

<시간>

권장 튜토리얼:


C 언어

  1. C# 유형 변환
  2. C++ 데이터 유형
  3. C++ 연산자
  4. C++ 주석
  5. C++ 클래스 템플릿
  6. Python 유형 변환 및 유형 캐스팅
  7. 파이썬 숫자, 유형 변환 및 수학
  8. C++ Char 데이터 유형(예제 포함)
  9. C++ 개요
  10. C++ 변수 유형