// Vous lisez...

Les bases du langage C

4- Les différents types de données du Langage C

short, int, char, float . . .

Les types de données simples

  • Les entiers : le type short et le type int

    Les types short et int sont destinés à contenir un entier ( et un seul ) ; cependant, il peuvent se décliner de plusieurs manières.

    Le programme qui suit ( taille_entiers.c ) vous permettra de savoir la taille en octets de chacun des types d’entier :

    Sous Linux, ce programme donne :

    Cependant, sur d’autres systèmes, les tailles des types de données peuvent différer.

    Il est donc important de préciser que les programmes qui procèdent a des décalages de bits ne sont pas nécessairement portables d’une plate-forme à une autre.

    Un short pourra contenir, sous Linux, une valeur entre : -32768 et 32767

    Un unsigned short pourra contenir, sous Linux, une valeur entre : 0 et 65535

    Un int pourra contenir, sous Linux, une valeur entre : -2147483648 et 2147483647

    Un unsigned int pourra contenir, sous Linux, une valeur entre : 0 et 4294967295

    Un long int pourra contenir, sous Linux, une valeur entre : -2147483648 et 2147483647

    Un unsigned long int pourra contenir, sous Linux, une valeur entre : 0 et 4294967295

    Un long long int pourra contenir, sous Linux, une valeur entre : -9223372036854775808 et 9223372036854775807

    Un unsigned long long int pourra contenir, sous Linux, une valeur entre : 0 et 18446744073709551615

    Le programme min_max_types.c vous permettra de retrouver ces valeurs minimales quelle que soit votre plate-forme.

  • Les nombres a virgule flottante : le type float et le type double

    Les types float et double sont destinés à contenir un nombre a virgule flottante ( et un seul ), c’est a dire un reel en langage purement mathématique.

    Le programme qui suit ( taille_float.c ) vous permettra de savoir la taille en octets de chacun des types de reels du langage c :

    Sous Linux, ce programme donne :

Commentaires

1 Message

  1. 4- Les différents types de données du Langage C

    La taille des données ne dépends pas ’que’ de l’OS. En fait c’est plutot l’architecture du processeur qui est en cause.
    Historiquement le type int est prévu pour fonctionner avec le maximum de performance, donc sur un processeur 32 bits (comme le Pentium 4, par exemple) les entiers ’int’ sont stockés sur 32 bits. Lorsque nous passerons aux processeurs 64 bits il y aura certainement des changements à ce niveau.

    | 27 mars 2006, 18:32