Forum Linux.pl

Programowanie => C/C++ => Wątek zaczęty przez: fedora w 2007-08-28, 16:14:13

Tytuł: Deklaracja zmiennej typu float, double.
Wiadomość wysłana przez: fedora w 2007-08-28, 16:14:13
Witam mam pytanie.Może jest banalne ale dopiero zaczynam naukę C.
Otóż nie wiem dlaczego ale kiedy deklaruję zmienna typu float taką komendą: float zmienna=1.5;
a później chcę jej wartość wyświetlić na ekranie komendą: printf("%d", zmienna);
to w wyniku zawsze dostaję zero ( 0 ).to samo dotyczy zmiennej typu double.mam system debian i uzywam kompilatora gcc.
Tytuł: Deklaracja zmiennej typu float, double.
Wiadomość wysłana przez: xavery w 2007-08-28, 16:56:27
Specyfikator %d służy do wyświetlania liczb całkowitych (int, char...). Próbując wyświetlić liczbę zmiennoprzecinkową zostanie ona niejawnie skonwertowana do typu całkowitego. Do wyświetlania tego rodzaju liczb służy specyfikator %f. Por man 3 printf
Tytuł: Deklaracja zmiennej typu float, double.
Wiadomość wysłana przez: fedora w 2007-08-28, 17:07:10
Dziekuję.właśnie chciałem odpisać że juz znalazłem odpowiedz :). Aby wyświetlić liczbę zmiennoprzecinkową można też użyć formantu %g.
Pozdrawiam:)