[C]enregister les résultats dans fichier text

Bonjour,

Je voudrais enregistrer la variable cout dans ma boucle dans un fichier texte.
J'ai utilisé la fonction fprintf comme suit.mais ça ne fonctionne pas.
Merci par avance de vos aides.
FILE *fp = NULL;
fp = fopen("sortie.txt","w") ;
for(i=0;i<N;i++)
{
    cout = A+B;
     fprintf (fp, "cout :  %lf\n ", cout);
      fclose(fp);
    

}

2 réponses

  1. Contributeur
    Bonjour,

    Assurez-vous tout d'abord que fopen ne renvoie pas NULL pour voir s'il n'y a pas de problème de création du fichier.
    Ensuite, vous fermez le fichier (fclose(fp)), lors de chaque itération alors que vous ne l'avez ouvert qu'une fois. Sortez donc fclose(fp) de la boucle for.
    Et enfin, ce n'est pas %lf qu'il faut mettre dans le fprint mais %f.
    Cdlt,
    0
    1. J t conseille plus tot d'utiliser W+ ou a+ ou r+... au cas ou l fichier n existerai pas encore
      0
      1. Contributeur
        J t conseille plus tot d'utiliser W+ ou a+ ou r+... au cas ou l fichier n existerai pas encore
        Avec "w" aussi le fichier est créé s'il n'existait pas. Ce qui n'est pas le cas avec r+...
        0