Instruction selon : SWITCH CASE

switch (expression)

   {case valConstante : instruction 1;

                         instruction 2;

                        

                         break ;

   case valConstante2 : instructions ;

   default : instructions ;

   }

 

Rq : les instructions sont exécutées jq'à la rencontre d'un break

 

Rq : tous les éléments d'un tableau se succèdent dans la mémoire de l'ordinateur.

 

Attn : les entiers se codent sur 4 octets Þ les indices vont de 1 en 1 mais les adresses des cases-mémoire correspondantes vont de 4 en 4.

(caractères codés sur 1 octet)

Segmentation fault : la case mémoire consultée n'appartient pas à l'espace mémoire réservé au programme.

 

Attn : en C et C++ : les indices commencent tj à 0

 

déclaration d'un tableau

typeTableau    nomTableau[tailleTableau] ;

 

initialisation d'un tableau

typeTableau    nomTableau[tailleTableau] = { val0, val1, … valtailleTableau-1-n};

Rq : on n'est pas forcé d'initialiser tout le tableau

 

typeTableau    nomTableau[] = {val0, val1, …, valtailleTableau-1};

Rq : la taille du tableau est déterminée par le compilateur lui-même.

 

Accès erronés

Indices Î [0 ; Taille-1]

Tout accès en dehors de cet intervalle est un accès erroné

 

Attn aux indices balayés dans les boucles FOR et WHILE

  

Déclarer un tableau à 2 dimensions

typeTableau    nomTableau[nbLignes] [nbColonnes];

En mémoire, le tableau est mémorisé ligne après ligne.

 

initialisation d'un tableau à 2 dimensions

typeTableau    nomTableau[nbLignes] [nbColonnes] = { {listeValLigne1}, {listeValLigne2}, …}

Rq : on n'est pas forcé d'initialiser tout le tableau, la taille du tableau puet être déterminée par le compilateur lui-même.

 

String (ch. de car.)

 

'\0' : marque la fin des ch. de car.

 

cout<<tableauDeCaractères

affiche tous les caractères du tableau jq'au premier \0 rencontré.

 

# include <string.h>

strlen : donne longueur ch. de car. s compter \0

srtcmp : compare 2 chaînes (tri alphabétique)

   >0 si : 1e > 2e ou >0 ou =0

strcpy : copie une chaîne dans une autre

Attn : la taille des tableaux n'est pas testée.