fputc : comportement étrange - C - Programmation
Marsh Posté le 18-08-2004 à 14:15:11
Peut-être parcequ'il est ouvert en mode texte ?
Essaye en binaire
Marsh Posté le 18-08-2004 à 14:31:50
Merci, c'était exactement ça. 0x0A en mode texte, ça correspond à Linefeed, et il ajoutait automatiquement un carriage return avant... J'aurais du y penser. Un grand merci!
Marsh Posté le 18-08-2004 à 14:07:03
Bonjour,
je veux écrire dans un fichier que j'ai créé avec :
stream = fopen("test.bin", "w" );
j'utilise donc fprintf lorsque j'ai des longues chaines de bytes à envoyer, mais si j'en ai qu'une j'ai utilisé fputc. par exemple
fputc(12,stream);
Le seul problème, c'est quand j'utilise la commande
fputc(10,stream); plutôt que d'avoir 0A dans mon fichier binaire, le programme écrit systématiquement 0D0A, alors que pour les autres nombres (en tout cas pour les quelques uns que j'ai testé) il n'y a pas de problème. Pourquoi m'écrit-il deux bytes lorsque je veux envoyer 10 (0x0A)???
Je suis très perplexe et j'espère que vous pourrez m'aider...
Merci d'avance