충분히 쌓여가는
13. 캐스팅과 자료형 변환 본문
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);
}
}
}
실행
'초보자를 위한 C# 200제 > C# 입문' 카테고리의 다른 글
15. Convert 클래스와 2진수, 8진수, 16진수 출력 (0) | 2024.09.11 |
---|---|
14. 문자열과 숫자의 변환 (0) | 2024.09.11 |
12. 실수를 표현하는 float, double, decimal (0) | 2024.09.05 |
11. 형식지정자를 사용하는 String.Format()과 ToString() (0) | 2024.09.05 |
10. 형식지정자를 사용한 Console.WriteLine 메소드 (0) | 2024.09.05 |