Notice
Recent Posts
Recent Comments
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

충분히 쌓여가는

13. 캐스팅과 자료형 변환 본문

초보자를 위한 C# 200제/C# 입문

13. 캐스팅과 자료형 변환

빌드이너프 2024. 9. 8. 19:59

C#은 엄격하게 자료형을 체크한다.

예를 들어 double 형식의 리터럴을 암시적으로 float 형식으로 변환할 수 없다

(F라는 접미사가 없기 때문에 double 형으로 인식하기 때문)

float f = 1234.5; // 에러

 

암시적 형변환

float를 double로 형변환하는 경우처럼 작은 자료형을 더 큰 자료형으로 변환할 때는 데이터의 손실이 생기지 않는다.

이런 경우 자동으로 형이 변환되고, 이것을 암시적 형변환이라고 한다

 

명시적 형변환

double을 int로 변환하는 경우처럼 큰 자료형을 작은 자료형으로 변환할 때는 데이터가 손실될 수 있다.

이 경우 강제로 형변환을 시켜줘야 한다.

변환하고자 하는 자료형으로 기존 자료형을 cast 해줘야 한다.

 

코드

using System;

namespace A013_TypeConversion
{
    class Program
    {
        static void Main(string[] args)
        {
            int num = 2147483647;
            long bigNum = num; // 암시적 형변환
            Console.WriteLine(bigNum);

            double x = 1234.5;
            int a;

            a = (int)x; // 명시적 형변환
            Console.WriteLine(a);
        }
    }
}

 

실행