Int => chaine de caractères ?

Signaler
Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003
-
Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003
-
vala, il me faudrait transformer une variable int en chaine de caractère.
Y a-t-il une fonction toute faite ?
en fait, mon but est de l'inscrire dans un fichier txt, mais j'arrive pas à le faire directement avec la valeur de la variable (normal je pense..)
merci ;)
***raph***

8 réponses

Messages postés
6
Date d'inscription
jeudi 2 mai 2002
Statut
Membre
Dernière intervention
6 juin 2002

cherche du côté de la fonction itoa qui convertit un entier en chaîne de caractères
Messages postés
17
Date d'inscription
jeudi 11 avril 2002
Statut
Membre
Dernière intervention
7 avril 2004

EN C :

#include <stdio.h>

main(){
char buf[255];
int x=2345;

sprintf(buf,"%d",x); /* buf contient "2345\0" */
}

Il me semble que la fonction itoa n'esiste pas en norme ISO/ANSI contrairement à la fonction atoi qui
converti des chaines en entiers.

A++
Géant Vert
Messages postés
17
Date d'inscription
jeudi 11 avril 2002
Statut
Membre
Dernière intervention
7 avril 2004

En fait tu devrais pouvoir ecrire directement ton int dans le fichier :

#include <stdio.h>

main(){
FILE *ptr;
int x=2345;

ptr=fopen("nomfich","w"); /*ouverture du fichier en ecriture*/
fprintf(ptr,"%d",x); /* Ecriture dans le fichier */
}
Géant Vert
Messages postés
17
Date d'inscription
jeudi 11 avril 2002
Statut
Membre
Dernière intervention
7 avril 2004

j'ai oublié le fclose(ptr); à la fin du main pour refermer le fichier

Géant Vert
Messages postés
6
Date d'inscription
jeudi 2 mai 2002
Statut
Membre
Dernière intervention
6 juin 2002

je m'excuse platement d'avoir répondu aussi bètement sans réfléchir...
merci M. le géant pour la correction.
Messages postés
17
Date d'inscription
jeudi 11 avril 2002
Statut
Membre
Dernière intervention
7 avril 2004

On a tous nos moment de faiblesse ;-)

Géant Vert
Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003

merci à tous pour vos réponses.
Je teste ca très bientôt et en particuler la fonction itoa.
pour info, c pour un petit jeu, avec gestion des highscores via fichier txt externe..la source sera bientot sur cppfrance
***raph***
Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003

itoa marche très bien, merci ;)
pour info, si des gens veulent l'utiliser, c :

int nombre;
char tableau_char[12]; // exemple
int base = 10; // on détermine la base.

itoa(nombre, tableau_char, base);

***raph***