Tableau 1D

Déclaration

type nom[taille];

int tab[42];

<aside> ⚠️ A l’usage, il n’y a aucune vérification des indices. C’est au programmeur de s’assurer qu’il n’y a pas d’erreur.

</aside>

Tableau à plusieurs dimensions

Aussi appelés : “tableaux de tableaux”

float mot[5][3];

Tableaux et fonctions

Une fonction peut prendre un tableau en paramètre si celui-ci est passée par adresse

void affiche_tab(int tab[], int n)
{
	for (int i=0 ; i<n ; i++)
		printf("%i \\n",tab[i]);
}
  1. En général, il faut passer la taille du tableau à l’aide d’un paramètre supplémentaire (n dans l’exemple)

  2. Ne pas mettre la taille du tableau dans les crochet du paramètre correspondant, cela ne sert à rien.

  3. Pour les tableaux à plusieurs dimensions, les dimensions doivent être données (sauf pour la première)

    void affiche_mat(float mat[][3], int lignes)
    {
    	for (i=0 ; i < lignes ; i++){
    		for (int j=0 ; j < 3 ; j++)
    			printf("%f,",mat[i][j]);
    	}
    }
    
    void somme(int a[], int n)
    {
    	for (int i = 1 ; i < n ; i++)
    		a[i] = a[i-1] + a[i];
    }
    
    int main (void)
    {
    	int t[5] = {1,2,3,4,5};
    	somme(t,5);
    	affiche_tab(t,5);
    }
    

Chaines de caractères

En C les chaînes de caractères sont des tableaux particuliers :

char nom[]="Toto";
0 1 2 3 4
‘T’ ‘o’ ‘t’ ‘o’ ‘\0’

Calculer la taille d’un tableau

Il faut calculer la longueur du tableau tab en divisant la taille totale du tableau en octets (obtenue par sizeof(tab)) par la taille d'un élément individuel (obtenue par sizeof(tab[0])).