bonjour
j'essai de copier un tableau d'entier dans fichier.txt mais ca m'affiche des caracteres a la place des entiers .Je ne sais pas si c'est le fichier qui n'est pas adequat ou bien c'est la fonction fputc qui ne correspond pas
bonjour
j'essai de copier un tableau d'entier dans fichier.txt mais ca m'affiche des caracteres a la place des entiers .Je ne sais pas si c'est le fichier qui n'est pas adequat ou bien c'est la fonction fputc qui ne correspond pas
Un bout de code serai la bienvenue pour t'aider...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #include<stdio.h> int main() { FILE *f=NULL; f=fopen("tableau.txt","w"); int tableau[]={12,32,3,6,0,4,9,8,-1,-13}; int i; if(f!=NULL) { for(i=0;i<10;i++) { fputc(tableau[i],f); } fclose(f); } else perror("tableau.txt"); return 0; }
Foa,
Il faut commencer par convertir tes int en chaine de caractères.
Ce que tu as créé est un fichier binaire.
donc je dois faire une double conversion dans la mesure ou je dois afficher le contenu de mon fichier sur stdout. Avec quelles fonctions je dois faire ces conversions?
Bonjour,
tu peux utiliser sprintf(), qui fait partie du header #include<stdio.h> je crois, elle fait bien son travail
cordialement
Bonjour,
Ça dépend.
Avec la bibliothèque stdio C, il faut utiliser printf/fprintf/sprintf.
Avec la bibliothèque iostream C++, c'est automatique (voir la FAQ)
Merci j'ai teste et ca marche aussi avec un fprintf( f,"%i\n",tableau[i]); ca marche mais je ne sais pas si c'est acceptable
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager