Maison > développement back-end > C++ > Que sont les conversions de type implicites et les conversions de types explicites en langage C ?

Que sont les conversions de type implicites et les conversions de types explicites en langage C ?

PHPz
Libérer: 2023-09-08 22:13:01
avant
1116 Les gens l'ont consulté

La conversion d'un type de données en un autre est appelée conversion de type.

  • Conversion de type implicite
  • Conversion de type explicite
  • ul>

    Conversion de type implicite

    • Le compilateur fournit une conversion de type implicite lorsque les opérandes ont des types de données différents.

    • Cela est effectué automatiquement par le compilateur en convertissant les types de données plus petits en types de données plus grands.

    int i,x;
    float f;
    double d;
    long int l;
    Copier après la connexion

    Que sont les conversions de type implicites et les conversions de types explicites en langage C ?

    Ici, l'expression ci-dessus est finalement évaluée à une valeur "double".

    Exemple

    Ce qui suit est un exemple de conversion de type implicite -

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

    Conversion de type explicite

    • La conversion de type explicite est effectuée par l'utilisateur à l'aide de l'opérateur (type).

    • Avant d'effectuer la conversion, une vérification d'exécution est effectuée pour voir si le type cible peut contenir la valeur source.

    int a,c;
    float b;
    c = (int) a + b
    Copier après la connexion

    Ici, le résultat de 'a+b' est explicitement converti en 'int' puis affecté à 'c'.

    Exemple

    Ce qui suit est un exemple de conversion de type explicite -

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

    Comprenons la différence entre deux conversions de type à travers un exemple -

    Exemple (conversion implicite)

    Démonstration en direct

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

    Sortie

    Implicit value:40.000000
    Copier après la connexion

    Exemple (conversion explicite)

    Démo en direct

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

    Sortie

    Explicit value:40
    Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal