mardi 29 janvier 2013

Cours Langage C : Les types prédéfinis

,

Les types prédéfinis

Le C est un langage  typé. Cela signifie en particulier que toute variable, constante ou fonction est d'un type
précis. Le type d'un objet définit la façon dont il est représenté en mémoire. 

La mémoire de l'ordinateur se décompose en une suite continue d'octets. Chaque octet de la mémoire est
caractérisé par son adresse, qui est un entier. Deux octets contigus en mémoire ont des adresses qui diffèrent
d'une unité. Quand une variable est définie, il lui est attribué une adresse. Cette variable correspondra à une zone
mémoire dont la longueur (le nombre d'octets) est fixée par le type.

La taille mémoire correspondant aux différents types dépend des compilateurs ; toutefois, la norme ANSI
spécifie un certain nombre de contraintes.

Les types de base en C concernent les caractères, les entiers et les flottants (nombres réels). Ils sont désignés par
les mots-clefs suivants :

char   int   float   double   short   long  unsigned

 1 . Le type caractère

Le mot-clef  char désigne un objet de type caractère. Un char peut contenir n'importe quel élément du jeu de
caractères de la machine utilisée. La plupart du temps, un objet de type char est codé sur un octet ; c'est l'objet le
plus élémentaire en C. Le jeu de caractères utilisé correspond généralement au codage ASCII (sur 7 bits). La
plupart des machines utilisent désormais le jeu de caractères ISO-8859 (sur 8 bits), dont les 128 premiers
caractères correspondent aux caractères ASCII. Les 128 derniers caractères (codés sur 8 bits) sont utilisés pour
les caractères propres aux différentes langues. 

Une des particularités du type char en C est qu'il peut être assimilé à un entier : tout objet de type char peut être
utilisé dans une expression qui utilise des objets de type entier. Par exemple, si c est de type char, l'expression c
+ 1 est valide. Elle désigne le caractère suivant dans le code ASCII. Ainsi, le programme suivant imprime le
caractère 'B'.

main()
{
  char c = 'A';
  printf("%c", c + 1);
}

2 . Les types entiers

Le mot-clef désignant le type entier est  int. Un objet de type int est représenté par un mot ``naturel'' de la
machine utilisée, 32 bits pour un DEC alpha ou un PC Intel.

Le type int peut être précédé d'un attribut de précision (short ou  long) et/ou d'un attribut de représentation
(unsigned).Un objet de type short int a au moins la taille d'un  char et au plus la taille d'un int. En général, un
short int est codé sur 16 bits. Un objet de type long int a au moins la taille d'un int (64 bits sur un DEC alpha, 32
bits sur un PC Intel).

3 . Les types flottants 

Les types float, double et long double servent à représenter des nombres en virgule flottante. Ils correspondent
aux différentes précisions possibles.

0 commentaires to “Cours Langage C : Les types prédéfinis”

Enregistrer un commentaire