bob82fr
Messages postés38Date d'inscriptionsamedi 1 février 2003StatutMembreDernière intervention13 janvier 2005
-
8 juin 2004 à 10:34
mop666
Messages postés46Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention27 février 2007
-
8 juin 2004 à 12:53
hi,
j'ai un enorme probleme, j'essaye de faire une sorte de stringtokeneizer en c++, ca compile bien mais a l'execution j'ai plein de plantages.
int read()
{
FILE *read;
AnsiString ligne;
AnsiString res;
// On ouvre le fichier
read=fopen("temp.txt","r");
if(!read){
printf("\ntemp.txt can't be read\n");
return -1;
}
printf("Lecture en route");
// On recupere les valeurs des differentes variables dans le fichier
// grace a la fonction fscanf
int i = 0;
while (fscanf(read,"%s %s", &ligne, &res) != EOF){
if (AnsiCompareStr(ligne, "modelEsti:")==0){
Estimation = res;
printf("\nRes %s", Estimation);
}
i++;
}
fclose(read);
printf("\n\nSauvegarde lue ! Affichage des valeurs lues :\n\n");
return 1;
}
Des que je sort de la methode il plante. Et l'erreur provient de la methode car j'ai fait plein de tests et c bien cette methode qui me fou le bordel.
J'ai l'impression que c parce que j'utilise des AnsiString avec des fscanf.
mop666
Messages postés46Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention27 février 2007 8 juin 2004 à 12:53
je sais pas ce que c est ansi string mais fscanf est faite pour que l adresse que tu passe en parametre pointe vers un buffer DEJA alloue. Elle n est pas faite pour des classes qui gere l allocation car dans son code y a rien de prevu pour l appel des methodes des ansistring!!!!