PB de matrice

limax84 Messages postés 1 Date d'inscription jeudi 12 décembre 2002 Statut Membre Dernière intervention 12 décembre 2002 - 12 déc. 2002 à 22:00
cs_reiben2k Messages postés 1 Date d'inscription dimanche 29 mai 2005 Statut Membre Dernière intervention 29 mai 2005 - 29 mai 2005 à 12:32
J'ai un probleme d'allocation dynamique de memoire pour une matrice.
pour un tableau, je procede comme ceci:

int * t;
t = new int [30];

mais pour une matrice je bloque, voila, merci d'avance.

3 réponses

cs_psycho Messages postés 232 Date d'inscription samedi 11 mai 2002 Statut Membre Dernière intervention 27 octobre 2007
13 déc. 2002 à 09:41
pour une matrice, ce n est guere plus compliqué. Tu demandes la dimension de ta matrice( je te donne pour une matrice carrée), et après, tu crée un pointeur a double dimension du type **mat. et tu crée ton tableau a ce moment là. Voila. tu c tout ce qu il faut
++

psycho
0
cs_GoldenEye Messages postés 527 Date d'inscription vendredi 14 septembre 2001 Statut Membre Dernière intervention 6 octobre 2008 4
16 déc. 2002 à 20:48
-------------------------------
Réponse au message : Je crois que ce n'est pas cela qu'il veut:
int **mat;
int nb_colonnes;
int nb_lignes;
mat=(int**)malloc(nb_lignes*sizeof(int*))
for(i=0;i<nb_lignes;i++)
mat[i]=(int*)malloc(nb_colonnes*sizeof(int));

Voilà j'ai peut-être inversé nb_lignes et nb_colonnes mais l'idée est là
-------------------------------

> pour une matrice, ce n est guere plus compliqué. Tu demandes la dimension de ta matrice( je te donne pour une matrice carrée), et après, tu crée un pointeur a double dimension du type **mat. et tu crée ton tableau a ce moment là. Voila. tu c tout ce qu il faut
> ++
>
> psycho
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> J'ai un probleme d'allocation dynamique de memoire pour une matrice.
> pour un tableau, je procede comme ceci:
>
> int * t;
> t = new int [30];
>
> mais pour une matrice je bloque, voila, merci d'avance.
>
0
cs_reiben2k Messages postés 1 Date d'inscription dimanche 29 mai 2005 Statut Membre Dernière intervention 29 mai 2005
29 mai 2005 à 12:32
bonjour je sais ke ce pb est vieu mai bon je v poster ma version de l allocation dynamique en c++ (celle de goldeneye est en c) :

int ** M;
M = new int*[n]; //allocation d un tab de pointeur sur entier c a dire les colones
for(int i =0; i<n; i++)
M[i] = new int[n]; // allocation des lignes ici c une matrice carre n est modifiable

il y a peut etre d autres solutions celle ci me semble la plus intuitive
0
Rejoignez-nous