Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Przejście z double do short

Ostatnio zmodyfikowano 2009-07-14 14:19
Autor Wiadomość
Rudy
Temat założony przez niniejszego użytkownika
Przejście z double do short
» 2009-07-14 14:00:07
Witam.
Od razu powiem, że jestem początkującym w C++ (chociaż pracuje z innym językiem od ok. 3 lat), tak więc w razie czego proszę o łagodną karę :P

Mam taki problem. Zakładamy, że "a=5", a "b" zostało zadeklarowane jako unsigned short. Mamy taki wiersz:

b = 70 - floor( log( a ) );

oczywiście math.h został wczytany. Teoretycznie wszystko jest dobrze, ale funkcja floor zwraca double'a. Z tego powodu powstaje błąd. Jak ten bład naprawić/obejść?
P-8531
malan
» 2009-07-14 14:05:58
Zadeklarować a i b jako double ?
P-8532
DejaVu
» 2009-07-14 14:18:47
Druga opcja to wykonanie rzutowania:
b = 70 - static_cast < short >( floor( log( a ) ) );
P-8533
Rudy
Temat założony przez niniejszego użytkownika
» 2009-07-14 14:22:43
Ok, dzięki

b nie może być double, bo b idzie do funkcji gotoxy :D

BTW: w tabeli "Ostatnio aktywni" godzina ma 100 minut, a nie 60 :)
P-8534
DeBugger
» 2009-07-14 15:42:36
Lock.
P-8535
manfred
» 2009-07-14 14:19:29
C/C++
b = static_cast < unsigned short int >( 70 - floor( log( a ) ) ); //grrr... Bardzo krótka nazwa typu. Ja chcę "ushort"!
P-19064
« 1 »
  Strona 1 z 1