Convertir double en chaine de caractère

Fermé
prog.. - Modifié par prog.. le 7/12/2011 à 11:33
 prog.. - 7 déc. 2011 à 23:10
Bonjour,

jvoudarais bien savoir cmmt convertir un double en chaine de caractère sans utiliser string.h ou bien sprintf ou autre fonction prédéfinie juste en définissant une fonction qui fait se travail en c je suis vrmnt bloquééé et merci d'avance

A voir également:

2 réponses

KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
7 déc. 2011 à 11:50
Commence par calculer le log10 de math.h (à moins que tu ne préfères le recoder aussi), ça te permettra d'avoir l'ordre de grandeur et ainsi le premier chiffre, après avec quelques opérations simples (soustraction, multiplication...) tu récupère les chiffres suivants, et tu t'arrêtes quand tu as assez de chiffres significatifs.
0
jé pas su cmnt faire cela sans utilisé une fonction prédéfinie afin de faire des simple opérations arithmétiques ou dautre ....j'en ai besoin de faire d'abord la fonction elle meme sans utilisé atoi ou bien atof
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
7 déc. 2011 à 22:58
Si tu traites les chiffres les uns après les autres tu n'as pas besoin d'utiliser atoi, tu peux directement obtenir le caractère de ton chiffre à afficher avec : char c = '0' + i; où i est l'entier du premier chiffre.

Exemple :

double d = 456;
double l = log10(d);  // 2.659
double f = floorf(l); // 2
double p = pow(10,f); // 100
int i = d / p;        // 4
char c = '0'+i;       // '4'
0
jé compris votre exemple mercii :)
0