파이썬

묵시적 형변환과 명시적 형변환

supersumin 2024. 7. 29. 19:44

1. 형변환(type conversion)이란?

프로그래밍에서 변수를 사용하는 과정에서 데이터의 형식이 일치하지 않을 때 데이터의 형식을 변경하는 과정이다.

형변환은 주로 명시적 형변환, 묵시적 형변환 이 두 가지 종류로 나눌 수 있다.

 

2. 묵시적 형변환(Impllicit Type Conversion)이란?

컴파일러나 인터프리터가 자동으로 형변환을 수행하는 경우이다. 데이터 타입이 서로 다를 때, 연산을 수행하기 위해 자동으로 형변환이 이루어질 수 있다.

a는 정수형 자료형, b는 실수형 자료형 변수이지만 int가 자동으로 float로 변환된다.

 

묵시적 형변환은 표현 범위가 좁은 데이터 타입에서 넓은 데이터 타입으로의 변환만 허용한다.

 

  • 정수 계열:
    • bool -> char -> short -> int -> unsigned int -> long -> unsigned long -> long long -> unsigned long long
    • "변수로 받는 값에 따라 적절한 자료형을 쓰는 것도 중요하다"
  • 부동 소수점 계열:
    • float -> double -> long double
  • 정수형에서 부동 소수점형으로의 변환:
    • int -> float
    • unsigned int -> float
    • long -> double
    • unsigned long -> double

 

 

3. 명시적 형변환(Explicit Type Conversion)이란?

프로그래머가 직접 형변환을 수행하는 경우이다. 주로 "캐스팅(casting)"이라고도 부른다. 알고리즘을 짤 때 자료형이 다른 경우가 존재하기 때문에 필요하다.