Witam,
Poradzcie mi cos, bo mnie to juz do szalu doprowadza :/
Kod:
char buf[50];
double i = atof("1234");
sprintf(buf,"%.15g",i);
gtk_entry_set_text(lookup_widget(GTK_WIDGET(button), "wyswietlacz"),buf);
Wynik na wyswietlaczu (pisze kalkulator): 2289648 (czyli, nieokreslony).
Co sie dzieje???
Jezeli zastosuje atoi i liczby typu int - dziala, jezeli typ inny niz calkowity - nie dziala. Podpowie ktos, bo mi brak pomyslow?
Problem lezy wlasnie w tej nieszczesnej konwersji z char* do double, bo jezeli zrobie tak:
sprintf(buf,"%.15g",(double)1234);
gtk_entry_set_text(lookup_widget(GTK_WIDGET(button), "wyswietlacz"),buf);
... to dziala (na wyswietlaczu 1234)