프로그래밍 언어/C

C언어 29강) 자료형 변환하기

happy_life 2020. 11. 16. 21:59

------------------------------------------------------------------> 형 확장(자동으로 진행됩니다)

char < short < int < long < long long < float < double < long double

형 축소(값 손실로 인해 바로 처리할 수 없습니다) <------------------------------------------------------------------

 

 

형의  확장은 값 손실이 없으므로 컴파일러가 알아서 처리할 수 있습니다. 그러나 형 축소는 값 손실이 발생하여 컴파일러가 바로 처리할 수 없고 따라서 컴파일 경고가 발생합니다.  형 변환으로 프로그래머의 생각을 알려주어야만 컴파일러가 오류없이 변환을 할 수 있습니다. 형 변환은 컴파일러에게 자료형을 변환한다는 생각을0 확실히 알려주는 것입니다.

특히, 형 변환은 구조체와 포인터를 조합하여 사용할 때 유용하게 활용할 수 있습니다.

 

컴퓨터에는 여러 가지 자료형이 있습니다.

한 자료형에서 다른 자료형으로 변환해야 할 상황에선 어떻게 해야 할까요?? 

 

  • (자료형) 변수
  • (자료형) 값

▲위의 문법을 통해 자료형을 변경해줄 수 있습니다.

 

● 자료형 변환 코드 예제

#include <stdio.h>

int main()
{
    int num1 = 30;
    int num2 = 7;
    float num3;

    num3 = num1 / num2;      
    printf("%f\n", num3);    // 4.000000

    num3 = (float)num1 / num2;    // num1을 float로 변환
    printf("%f\n", num3);         // 4.285714

    return 0;
}

 

위의 코드에서 보듯, 자료형 변환을 통해 값을 정확하게 구하는 등의 코드를 짤 수 있습니다.