Définir un tableau

Résolu
Paris1969 -  
 Paris1969 -
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. KX Messages postés 19031 Statut Modérateur 3 020
     
    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
  2. Paris1969
     
    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
  3. KX Messages postés 19031 Statut Modérateur 3 020
     
    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
  4. Paris1969
     
    Ok, merci, c'était pas super clair dans ma tête, maintenant ça va mieux !

    Problème résolu :)
    0