Matrice de caractere en c

cs_flofloo Messages postés 45 Date d'inscription samedi 5 juin 2004 Statut Membre Dernière intervention 16 mars 2009 - 20 juil. 2008 à 20:46
cs_flofloo Messages postés 45 Date d'inscription samedi 5 juin 2004 Statut Membre Dernière intervention 16 mars 2009 - 20 juil. 2008 à 21:48
slt tout le monde voici mon probleme :




char **Init_Matrice_IrcMSG(int ligne,int colone)
{
     char **mat = NULL;
     int i;
     mat = (char**)malloc(ligne*sizeof(char*));
     for(i = 0;i<=ligne;i++)
     {
       mat[i] = (char*)malloc(colone *sizeof(char));
       } 
       return mat;
 }




vous l'avez compris on a faire a une matrice,mon probleme est que des que j'appel la fonction en lui affectant un vpointeur de type char** tout semble se passer tres bien,mais des que je decide d'ecrire dans la matrice avec une boucle "for" mon programme beug




  for(i =0;i<=199;i++)
{
   for(j=0;j<=199;i++)
   {
      matrice[i][j]='a';  
   }
}



dite moi svp que se passe t'il?...

3 réponses

SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
20 juil. 2008 à 20:57
for(i = 0;i<=ligne;i++)


Dépassement de la capacité de mat. mat peut contenir ligne pointeurs indexés de 0 à ligne-1 donc:


for(i = 0;i<ligne;i++)

Ensuite


for(j=0;j<=199;i++)

Tu incrémentes i au lieu de j.



C++ (@++)<!--
0
cs_flofloo Messages postés 45 Date d'inscription samedi 5 juin 2004 Statut Membre Dernière intervention 16 mars 2009
20 juil. 2008 à 21:46
merci je teste tous ça...
merci
0
cs_flofloo Messages postés 45 Date d'inscription samedi 5 juin 2004 Statut Membre Dernière intervention 16 mars 2009
20 juil. 2008 à 21:48
ca marchè merci encore pour i++ j'avais pas fait tro gaff en faite...
0
Rejoignez-nous