Partage
  • Partager sur Facebook
  • Partager sur Twitter

Sauvegarde bugguée

Sauvegarde et fichiers

Sujet résolu
    8 janvier 2022 à 17:37:02

    Bonjour à tous, 

    Petit problème avec ma sauvegarde (voici juste l'extrait du sous-programme) : 

    #include "../Structures/structure_joueur.h"
    
    void sauvegardeclassique(int nb_joueurs, t_joueur joueur_x[], t_carte cartes) // Sauvegarde n°1
    {
        FILE* sauvegarde1 = NULL;
        sauvegarde1 = fopen("sauvegarde1.txt", "w"); // "w" pour ECRASEMENT donc on crée un NOUVEAU FICHIER et on ECRASE l'autre si il y'en a un
    
        fprintf(sauvegarde1, "%d\n", nb_joueurs);
        for (int x = 0; x < nb_joueurs; x++) // Boucle pour sauvegarder les structures
        {
            fflush(stdin);
            fprintf(sauvegarde1, "%s\n", joueur_x[x].pseudo);
            fprintf(sauvegarde1, "%d\n", joueur_x[x].argent);
            fprintf(sauvegarde1, "%d\n", joueur_x[x].position);
            fprintf(sauvegarde1, "%d\n", joueur_x[x].ancienne_position);
            fprintf(sauvegarde1, "%d\n", joueur_x[x].prison);
        }
        fclose(sauvegarde1);
        sauvegarde1 = NULL;
    }

    Une fois le sousprog executé, on retrouve donc un fichier texte, et dans ce fichier texte, tout est faux au niveau des print SAUF le nombre de joueurs 

    (dans mon programme, si je joue une partie de mon jeu et que j'y met le nombre de joueurs, ça me crée n profils de joueurs, on doit choisir le pseudo, mais l'argent, la position et la prison sont directement choisies par des variables définies) 

    On obtient un fichier txt comme ça :

    -
    Edité par Clément 2910 8 janvier 2022 à 17:37:43

    • Partager sur Facebook
    • Partager sur Twitter
      8 janvier 2022 à 18:26:56

      Probablement que le tableau de t_joueur que tu envois à ta fonction n'est pas initialisé ou rempli correctement ! mais ça on ne le voit pas !
      • Partager sur Facebook
      • Partager sur Twitter
        8 janvier 2022 à 18:27:26

        Bonjour,

        La fonction ne semble pas être en cause. Il faut vérifier que tes données sont correctes et que tu passes bien les bons paramètres à ta fonction. Je ne peux pas deviner les types de tes données, ce sont peut-être eux le problème.

        Edit: grilled

        -
        Edité par Dalfab 8 janvier 2022 à 18:28:56

        • Partager sur Facebook
        • Partager sur Twitter

        En recherche d'emploi.

          8 janvier 2022 à 18:55:45

          Suggestion : ajoute des 'printf' identiques, mais qui s'afficheront en console. On s'attend à ce qu'ils affichent des valeurs fausses, ce qui prouvera que la fonction ne dispose pas des bonnes valeurs. Reste à savoir pourquoi.

          -
          Edité par robun 8 janvier 2022 à 18:55:55

          • Partager sur Facebook
          • Partager sur Twitter
            8 janvier 2022 à 19:30:55

            @rouloude @Dalfab et bien merci de m'avoir éclairé, ça m'a fait régler mon probleme
            • Partager sur Facebook
            • Partager sur Twitter

            Sauvegarde bugguée

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            • Editeur
            • Markdown