Besoin d'aide en C

Fermé
bsaad - 30 oct. 2001 à 11:16
 lamabat - 30 oct. 2001 à 21:43
Bonjour,
Pouvez vous m'aider s'il vous plaît :
J'ai deux variables :
long var1;
var2[15];
Je veux copier atol(var1)/100 et atol(var1)%100 dans var1.
Par exemple :
var2="12345678900023"
Je veux avoir dans var1 "123456789000,23"
J'ai utilisé le sprintf comme suit :
sprintf(var1,"%d,%d",atol(var2)/100,atoi(var2)%100);
mais j'ai eu un problème à la compilation dans les types de variable.
Avez vous une idée pour résoudre ce problème?
Merci beaucoup

1 réponse

Salut,

J'ai remarqué un problème dans la conversion :
un long est linité à +- 2 G
un short est limté à +- 32767
Je te vonseille par convertir dans un double et l'afficher dans sprintf avec un format %f.
exemple
--------
char var1[255];
char var2[255]="12345678900023";
double d=atof(var2);

d= d/100;
sprintf(var1,"%f",d); // voir les formats de sprintf pour l'affichage voulu.

En espèrant que cela marchera.
@+
0