Constantes entières

On utilise souvent dans les programmes des constantes entières, comme 0, 12, -2000, etc. Lorsqu’elles sont écrites en décimal, ce qui est le cas général, elles ne doivent pas commencer par un zéro : écrire 12 et non 012 (voir paragraphe suivant). Il ne faut pas non plus placer d’espace à l’intérieur : écrire 2000 et non 2 000 qui serait interprété comme 2, suivi de 000, et provoquerait une erreur.

La constante peut être suivie des caractères U et/ou L, écrits en majuscules ou en minuscules, qui indiquent au compilateur de prendre la valeur sans signe (U pour unsigned) ou longue correspondante. Par exemple, l’écriture :

int i = 10000;long l = 10000L * i;unsigned long ul = 30000UL * i;

placera bien la valeur 100 000 000 dans l, alors que si l’on avait écrit 10000 * i, un débordement se serait produit, plaçant la valeur erronée -7936 dans l. De même, la valeur correcte de 300 000 000 sera placée dans ul, au lieu de la valeur erronée 4 294 943 488.

Exercice 2.2

Dans cet exemple, peut-on écrire 30000L au lieu de 30000UL ? Et si la valeur était 300000, que faudrait-il écrire ?

Voir solution
Précédent Précédent Sommaire Sommaire Suivant Suivant