#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char aaa[35] = "1.25";
char* bbb = &(aaa[0]);
char** ccc = &(bbb);
float a = strtof(*ccc, ccc);
printf("%f\n", a);
return 0;
}
Il codice che ho scritto sopra deve stampare 1.25
, ma in base al codificatore (compilatore C online), non viene stampato 1.25
. Sul codificatore, stampa 2097152.000000
. Ecco lo codepad linkPerché strtof non stampa il float corretto?
Cosa ho fatto di sbagliato qui?
Che cosa stampa allora? Ho ottenuto [1.250000] (http://ideone.com/Rs0Aru) su ideone –
http://codepad.org/ non stampa 1,25 quando il codice sopra è compilato ed eseguito –
Quindi quale output stai ottenendo? –