Pb apvec free apres calloc

Résolu
julienbornet Messages postés 99 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 2 février 2009 - 30 mars 2006 à 21:30
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 31 mars 2006 à 18:49
Bonjour a tous voila j'ai un probleme dont je ne comprend vraiment pas la cause. Voici mon probleme, apres avoir allouer une zone memoire avec calloc, une erreur du debuger met avoyer lors de la liberation de cette zone meoire.
Voici en image ce qui ce passe:

Voila quelqu'in aurait il une idee de ce qui cause cette erreur. D'avance merci

4 réponses

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
31 mars 2006 à 18:49
for (
int cpt = 1; cpt <= N; cpt = cpt++)

les tableaux vont de 0 à N-1, donc :

for (
int cpt = 0; cpt < N; cpt++)
3
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
30 mars 2006 à 21:35
Très Jolie image
Pose plutôt ton code, on est pas tous des voyants comme moi :(

if(!Meilleur("Joky")) return ERREUR;<
0
Zootella Messages postés 252 Date d'inscription vendredi 10 juin 2005 Statut Membre Dernière intervention 5 septembre 2006
30 mars 2006 à 22:06
1) Une image ça s'upload sur un site, faut pas mettre une adresse du style "C:\...".
2) En .jpg elle sera plus petite en taille.
0
julienbornet Messages postés 99 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 2 février 2009
30 mars 2006 à 22:48
ok bon je ne mettrait plus d'image. Bon pour le code je ne pense pas avoir fait de connerie mais la voici: (je previens c loin d'etre du grand art et d'un haut niveau intellectuel)


#include


#include <stdio.h>


#include<stdlib.h>





using
namespace std;


FILE * open;


int xRead;


float yRead;


int i, endfile;


int N;


int readfile(
void)


{


open = fopen("tab1.txt","r");


i = 0;


DefineN:


endfile = feof(open);



if (endfile == 0)


{


i++;


fscanf (open,"%d ",&xRead);


fscanf (open,"%f\n",&yRead);



goto DefineN;


}



else


{


fclose(open);


}


return i;


}


int main ()


{


int *x;


float *y;


N = readfile();


cout << N << endl;


x=(
int *)calloc(N,(
sizeof(
int)));


y=(
float *)calloc(N,(
sizeof(
float)));


if(x==NULL)


{


cout<<"pas assez de mémoire"<<endl;



goto end;


}


if(y==NULL)


{


cout<<"pas assez de mémoire"<<endl;



goto end;


}


open = fopen("tab1.txt","r");


i = 0;


for (
int cpt = 1; cpt <= N; cpt = cpt++)


{


fscanf (open,"%d ",&xRead);


x[cpt] = xRead;



//cout << xRead << endl;


fscanf (open,"%f\n",&yRead);


y[cpt] = yRead;



//cout << yRead << endl;


}


fclose(open);






for (int cpt = 1;cpt <= N;cpt = cpt++)


{


printf("X%d egal %d\n",cpt,x[cpt]);


printf("Y%d egal %f\n\n",cpt,y[cpt]);


}


end:


cin.ignore();


free(x);


free(y);


return 0;


}
0
Rejoignez-nous