Les types de base du langage C
Au niveau du processeur, toutes les données sont représentées sous leur forme binaire et la notion de type n'a pas de sens. Cette notion n'a été introduite que par les langages de haut niveau dans le but de rendre les programmes plus rationnels et structurés. Mais même parmi les langages de haut niveau, on distingue ceux qui sont dits fortement typés (qui offrent une grande variété de types), comme le Pascal par exemple, de ceux qui sont dits faiblement ou moyennement typés (et plus proches de la machine) comme le C par exemple. Le langage C ne dispose que de 4 types de base :
Type C Type correspondant
char caractère (entier de petite taille)
int entier
float nombre flottant (réel) en simple précision
double nombre flottant (réel) en double précision
Devant char ou int, on peut mettre le modificateur signed ou unsigned selon que l'on veut avoir un entier signé (par défaut) ou non signé. Par exemple :
char ch;
unsigned char c;
unsigned int n; /* ou tout simplement : unsigned n */
La plus petite valeur possible que l'on puisse affecter à une variable de type entier non signé est 0 alors que les entiers signés acceptent les valeurs négatives.
Devant int, on peut mettre également short ou long auxquels cas on obtiendrait un entier court (short int ou tout simplement short) respectivement un entier long (long int ou tout simplement long). Voici des exemples de déclarations valides :
int n = 10, m = 5;
short a, b, c;
long x, y, z = -1;
unsigned long p = 2;
long peut être également mis devant double, le type résultant est alors long double (quadruple précision).
Nombres flottants
Toute constante littérale « pure » de type flottant (ex : 0.5, -1.2, ...) est considérée comme étant de type double.
Le suffixe f ou F permet d'expliciter un float. Attention, 1f n'est pas valide car 1 est une constante entière. Par contre 1.0f est tout à fait correcte. Le suffixe l ou L permet d'expliciter un long double.
Une constante littérale de type flottant est constituée, dans cet ordre :
• d'un signe (+ ou -)
• d'une suite de chiffres décimaux : la partie entière
• d'un point : le séparateur décimal
• d'une suite de chiffres décimaux : la partie décimale
• d'une des deux lettres e ou E : symbole de la puissance de 10 (notation scientifique)
• d'un signe (+ ou -)
• d'une suite de chiffres décimaux : la puissance de 10
Par exemple, les constantes littérales suivantes représentent bien des nombres flottants : 1.0, -1.1f, 1.6E-19, 6.02e23L, 0.5 3e8