Probléme d'allocation de mémoire

Fermé
N.O.R.E Messages postés 6 Date d'inscription vendredi 30 novembre 2012 Statut Membre Dernière intervention 3 avril 2014 - 1 déc. 2012 à 11:15
Bonjour,

je suis entrain de coder une classe de matrice creuse mais le compilateur m'affiche une erreur
de segmentation ("core dumped") dans la fonction qui surcharge l'opérateur cout, voilà le code de la fonction , et je vous remercie pour votre. réponse.


ostream& operator << (ostream& s, const MatrixSparse& Matrix)
 {
   double *A;
   int n = Matrix.n_;
   int m = Matrix.m_;
   int j0, j1, i, j;

   A = new double[n*m];
   
   for ( int i(0); i < n*m; i++)
     A[i] = 0.0;
   
   for ( int i(0);  i < m; i++)
     {
       j0 = Matrix.ptr_[i]; j1 = Matrix.ptr_[i+1]; // la ligne ou il y'a le probléme avec valgrind         
       for ( int k(j0); k < j1-1; j++)
	 A[i*n + Matrix.ind_[k]] = Matrix.data_[k];
     }
   
   for (  int i(0); i < n; i++)
     {
       for ( int j(0); j < m; j++){ s << A[i*n+j] << " \t";}
       cout << endl;
     }
   return s;      
}