Affichage de "-1" avec printf
Bonjour à tous,
Je lis (enfin j'essaie) de lire une image PGM (en format binaire P5). Tout fonctionne bien sauf à un moment, le programme s’arrête et affiche "-1". Le moment de l'arret change en fonction de l'image (qui garde toujours la même taille).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| #include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
FILE* fichier = NULL;
int caractereActuel = 0;
int compteur = 0;
fichier = fopen("1.pgm", "r");
fseek(fichier, 15, SEEK_SET);
if (fichier != NULL)
{
// Boucle de lecture des caractères un à un
do
{
caractereActuel = fgetc(fichier); // On lit le caractère
printf("%d", caractereActuel); // On l'affiche
printf(" "); // on affiche un espace
compteur ++; // incrémente le compteur
} while (caractereActuel != EOF); // On continue tant que fgetc n'a pas retourné EOF (fin de fichier)
printf("compteur = %d", compteur);
fclose(fichier);
}
return 0;
} |
Voici l'image
Lorsque je le teste sur mon PC, cela arrive après le caractère 309 (windows 10 Code::block) alors lorsque j'essaie sur le site repl.it ... il n'y a pas de soucis .
Merci de votre aide