Convertir chaine de caractere -> decimal

Signaler
Messages postés
2865
Date d'inscription
samedi 2 novembre 2002
Statut
Membre
Dernière intervention
11 mai 2009
-
cmarsc
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003
-
Salut a tous,
en fait je voudrai juste savoir comment est-ce ke l'on pouver convertir une chaine de caractère (ex: salut) en decimal...
Voila, merci d'avance...
Lord Bob

5 réponses

Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003

salut,

#include <stdlib.h>
il y a des fonctions comme atoi char en int atof char en float ...

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main(void)
{
int resultat_int;
char *chaine_char = "15545.67";

resultat_int = atoi(chaine_char); printf("char %s int %d\n", chaine_char , resultat_int);
getch();
return 0;
}
Messages postés
249
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
7 août 2003
1
utilise la fonction atof
float = atof( chaine );

par contre ça ne convertire pas "salut" mais seulement des trucs comme: "123.456789"
Messages postés
2865
Date d'inscription
samedi 2 novembre 2002
Statut
Membre
Dernière intervention
11 mai 2009
9
Voila mais en fait c pas trop ce ke je voudrait faire... En fait, dans mon programme je voudrai ke l'utilisateur entre une phrase et cette phrase, je voudrai la transformer en valeur decimal...
Messages postés
249
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
7 août 2003
1
Il faut que tu fasses ta propre fonction qui transformera en float suivant tes critères.
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003

salut,

voici un exemple de ce que tu veux faire je pense.

#include <stdio.h>
#include <conio.h> // <conio.c> devc++4
#include <string.h>

char *convertir_phrase_en_int (char *texte);

int main(void) {

char *resultat_en_int_dans_une_chaine;
char *texte = "SALUT !";

resultat_en_int_dans_une_chaine = convertir_phrase_en_int (texte);

gotoxy(1,20);
cprintf ("voici le resultat final \n%s",resultat_en_int_dans_une_chaine);

getch();
return 0;
} /* fin de main */

char *convertir_phrase_en_int (char *texte) {

int i;
int longeur_du_texte = strlen(texte);
static char resultat_en_int_dans_une_chaine[500];
static char resultat_int_temporaire[5];

gotoxy(1,1);
cprintf ("DECOMPOSITION DU TEXTE SUIVANT :\n%s",texte);

for (i = 0; i < longeur_du_texte; i++) {

/* afficher a l'ecran la decomposition*/
gotoxy(1,3+i);
cprintf ("%1c %3d",texte[i],texte[i]);

sprintf (resultat_int_temporaire,"%d",texte[i]);
strcat(resultat_en_int_dans_une_chaine,resultat_int_temporaire);
}

return resultat_en_int_dans_une_chaine;
} /* fin de la fonction convertir_phrase_en_int */