>  기사  >  백엔드 개발  >  C 언어에서 암시적 유형 변환과 명시적 유형 변환이란 무엇입니까?

C 언어에서 암시적 유형 변환과 명시적 유형 변환이란 무엇입니까?

PHPz
PHPz앞으로
2023-09-08 22:13:01998검색

한 데이터 유형을 다른 데이터 유형으로 변환하는 것을 유형 변환이라고 합니다.

  • 암시적 유형 변환
  • 명시적 유형 변환
  • ul>

    암시적 유형 변환

    • 컴파일러는 피연산자의 데이터 유형이 다른 경우 암시적 유형 변환을 제공합니다.

    • 더 작은 데이터 유형을 더 큰 데이터 유형으로 변환하여 컴파일러에 의해 자동으로 수행됩니다.

    int i,x;
    float f;
    double d;
    long int l;

    C 언어에서 암시적 유형 변환과 명시적 유형 변환이란 무엇입니까?

    여기서 위 표현식은 최종적으로 "double" 값으로 평가됩니다.

    Example

    다음은 암시적 유형 변환의 예입니다. -

    int x;
    for(x=97; x<=122; x++){
       printf("%c", x); /*Implicit casting from int to char %c*/
    }

    명시적 유형 변환

    • 명시적 유형 변환은 (유형) 연산자를 사용하여 사용자가 수행합니다.

    • 변환을 수행하기 전에 대상 유형이 소스 값을 보유할 수 있는지 확인하기 위해 런타임 검사가 수행됩니다.

    int a,c;
    float b;
    c = (int) a + b

    여기서 'a+b'의 결과는 명시적으로 'int'로 변환된 후 'c'에 할당됩니다.

    Example

    다음은 명시적 타입 변환 예시입니다. -

    int x;
    for(x=97; x<=122; x++){
       printf("%c", (char)x); /*Explicit casting from int to char*/
    }

    두 타입 변환의 차이점을 예시를 통해 이해해보겠습니다. -

    예(암시적 변환)

    라이브 데모

    #include<stdio.h>
    main(){
       int i=40;
       float a;
       //Implicit conversion
       a=i;
       printf("implicit value:%f</p><p>",a);
    }

    Output

    Implicit value:40.000000

    예 (명시적 변환)

    라이브 데모

    #include<stdio.h>
    main(){
       int i=40;
       short a;
       //Explicit conversion
       a=(short)i;
       printf("explicit value:%d</p><p>",a);
    }

    출력

    Explicit value:40

위 내용은 C 언어에서 암시적 유형 변환과 명시적 유형 변환이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제