[C++] 6강 형변환 타입캐스팅 type casting

안녕하세요~ 오늘은 형변환에 대해서 알아볼 거에요!!

형 변환이란 말 그대로

int형을 double형로

double형을 int형으로

char형을 int형으로

와 같이 다른 자료형으로 바꿔주는 작업을 뜻합니다!



1. 형변환

방법

1) static_cast<기준 타입>(바꿀 변수명)

2) (기준타입)바꿀변수명

3) 기준타입(바꿀변수명)

대표적으로 이렇게 3가지 방법이 존재합니다!!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
using namespace std;
 
int main()
{
    float Num = 3.141592;
    
    cout << Num << endl;
    cout << static_cast<int>(Num) << endl;
    cout << (int)Num << endl;
    cout << int(Num) << endl;
 
    return 0;
}
cs

#결과

C++ 에서 권장사항은 static_cast<>이지만 위의 세 가지 방법 모두 지원하고 있습니다.


하지만 문자열 같은 경우는 어떨까요?


1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
using namespace std;
 
int main()
{
    char str = 'A';
 
    cout << str << endl;
    cout << static_cast<int>(str) << endl;
    cout << int(str) << endl;
 
    return 0;
}
cs

#결과


문자 하나 같은 경우 ASCII 코드로 출력이 됩니다!!

따라서 대문자 A의 경우 아스키값으로 숫자 65니까 숫자 65가 출력되는 것을 보실 수 있습니다.


아스키코드에 대한 자세한 내용이 궁금하시다면 검색창에 '아스키코드'를 검색하시면 많은 정보를 찾을 수 있습니다!