écriture d'un chiffre dans un fichier

Le
Grégoire
Bonjour,

J'aimerais s'il vous plaît demander votre aide pour la question
suivante : je n'arrive pas à écrire un chiffre dans un fichier !
Voici mon code (simplifié, bien évidemment) :

ofstream outfile ("/Users/Documents/LectureTextes/doc.txt");
int i = 0;
outfile << i;
outfile.close();

je m'attendais à ce qu'un 0 soit écrit dans le document ouvert par la
première lignemalheureusement il n'en est rien. Par contre, si je
remplace le "int i = 0" par un "char c = 'a'", alors là ça fonction=
ne.
Quelqu'un peut-il m'aider ?!?
Je vous en serais très reconnaissant.

Grégoire.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fabien LE LEZ
Le #21444561
On Fri, 26 Mar 2010 09:52:13 -0700 (PDT), Grégoire

ofstream outfile ("/Users/Documents/LectureTextes/doc.txt");
int i = 0;
outfile << i;
outfile.close();



Note que le "close" ne sert pas à grand-chose si tu ne vérifies pas le
résultat.

je m'attendais à ce qu'un 0 soit écrit dans le document ouvert par la
première ligne... malheureusement il n'en est rien.



C'est bizarre, ça. Je soupçonne qu'il y a un problème ailleurs dans
ton code. Ou bien que ton compilateur est très vieux.

Essaie le code simplifié suivant. Si ça ne fonctionne toujours pas,
indique la version de ton compilo.

#include <fstream>

int main()
{
std::ofstream outfile ("doc.txt");
int i = 0;
outfile << i;
}
Grégoire
Le #21444751
On 26 mar, 18:11, Fabien LE LEZ
On Fri, 26 Mar 2010 09:52:13 -0700 (PDT), Grégoire

>ofstream outfile ("/Users/Documents/LectureTextes/doc.txt");
>    int i = 0;
>    outfile << i;
>    outfile.close();

Note que le "close" ne sert pas à grand-chose si tu ne vérifies pas l e
résultat.

>je m'attendais à ce qu'un 0 soit écrit dans le document ouvert par l a
>première ligne... malheureusement il n'en est rien.

C'est bizarre, ça. Je soupçonne qu'il y a un problème ailleurs dans
ton code. Ou bien que ton compilateur est très vieux.

Essaie le code simplifié suivant. Si ça ne fonctionne toujours pas,
indique la version de ton compilo.

#include <fstream>

int main()
{
   std::ofstream outfile ("doc.txt");
   int i = 0;
   outfile << i;



}



J'utilise Xcode (sur Mac OS X). Je croyais jusque maintenant que Xcode
utilisait le compilateur g++ disponible sur la ligne de commande. Mais
pourtant, j'ai essayé de compiler mon code avec ce dernier compilateur
(en utilisant g++ main.c etc) et maintenant ça marche ! Maintenant, le
problème est de trouver quel est le compilateur de Xcode et comment le
changer, vu que visiblement ce n'est pas celui de la ligne de
commandes.
Merci de m'avoir suggéré d'aller voir du côté du compilateur. Je ne
pensais vraiment pas que ça pouvait venir de là (mais plutôt du code) .
J'ai par ailleurs essayé de lancer depuis la ligne de commandes
l'éxecutable créé par Xcode. ça ne marche pas non plus.
Falk Tannhäuser
Le #21445411
Am 26.03.2010 19:10, schrieb Grégoire:
On 26 mar, 18:11, Fabien LE LEZ
#include<fstream>

int main()
{
std::ofstream outfile ("doc.txt");
int i = 0;
outfile<< i;
}



J'utilise Xcode (sur Mac OS X). Je croyais jusque maintenant que Xcode
utilisait le compilateur g++ disponible sur la ligne de commande. Mais
pourtant, j'ai essayé de compiler mon code avec ce dernier compilateur
(en utilisant g++ main.c etc) et maintenant ça marche ! Maintenant, le
problème est de trouver quel est le compilateur de Xcode et comment le
changer, vu que visiblement ce n'est pas celui de la ligne de
commandes.



Est-ce que ça change quelque chose si tu termines la dernière ligne du ficher par un saut de ligne :
outfile << i << 'n';
?

Falk
Publicité
Poster une réponse
Anonyme