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
Partager