Définir un tableau

Résolu
Bonjour,

Une petite question, je voulais savoir si en C, je pouvais définir des tableaux de cette manère :

int** monTableau;

C'est parce que j'ai vu un code dans lequel tout les tableaux étaient définis comme ça.

Merci !

4 réponses

  1. Ok, merci, c'était pas super clair dans ma tête, maintenant ça va mieux !

    Problème résolu :)
    0
    1. Modérateur
      Deux dimensions, ça veut dire que c'est comme faire int[][].

      Pour l'allocation dynamique tu devras faire quelque chose dans ce genre là :

      int n=2, m=2;
      
      int** mat = malloc(n*sizeof(int*));
      {
      	mat[0] = malloc(m*sizeof(int));
      	{
      		mat[0][0] = 1;
      		mat[0][1] = 2;
      	}
      
      	mat[1] = malloc(m*sizeof(int));
      	{
      		mat[1][0] = 3;
      		mat[1][1] = 4;
      	}
      }

      Remarque :
      Si tu veux stocker des lettres ce ne sont pas int que tu devras avoir mais des char...
      0
      1. OK, merci, mais "un tableau a deux dimensions" ça veut dire quoi exactement, je peux stocker lettres comme pour un char tableau[] ?

        Et il y a une manière particulière pour allouer dynamiquement un tableau a deux dimensions ou c'est la même chose que pour un tableau a une dimension ?
        0
        1. Modérateur
          Oui c'est possible, un tableau ce n'est qu'un pointeur...

          Remarque : si tu considères que cette structure est un tableau, alors c'est un tableau deux dimensions.
          0