Jak zamienić Currency na Integer. Współrzędne mam policzone w Currency. na podstawie tych współrzędnych chę narysować linie. Tam potrzebne są współrzędne w posaci Integer. Jak to zrobić. Próbowałem Currency zamienić na Sting a następnie na Integner ale to nic niedaje.
Jak zamienić Currency na Integer. Współrzędne mam policzone w Currency. na podstawie tych współrzędnych chę narysować linie. Tam potrzebne są współrzędne w posaci Integer. Jak to zrobić. Próbowałem Currency zamienić na Sting a następnie na Integner ale to nic niedaje.
Floattostr zmienno przecinkowa na string
currtostr ---##---
strtocurr string na zmiennoprzecinkową
strtoint string na integer
floattoint zmienno przecinkowa na integer
powinno działać chyba że coś pomyliłem
//pozostałe
inttostr
strtoint
strpas
strPcopy
timetostr
datetostr
strtodate
strtotime
mogłem o czymś zapomnieć
co nie działa? u mnie działa, musi działać
function currTOint(cur:Currency):Integer;
begin
Result := StrToInt( CurrToStr(cur) );
end;
Integer := Round(Currency);
Trzeba troche pokombinować, żeby nie wyskoczyło 'invalid typecast' podczas kompilacji...
function curr2int64(i:currency):int64;
type temptype=array[boolean]of longint; // aby 8 bajtów, obojetny typ
begin
curr2int64:=int64(temptype(i))div 10000;
end;
z helpa :
Currency is a fixed-point data type that minimizes rounding errors in monetary calculations. It is stored as a scaled 64-bit integer with the four least-significant digits implicitly representing decimal places. When mixed with other real types in assignments and expressions, Currency values are automatically divided or multiplied by 10000.
// Wolverine... Moje będzie (dopisane: jeszcze) szybsze ;p
// piękne rzutowanie [prosze] - ŁF
// nom, int64(i) nie chciał kompilator rzutować rozmiarowo, tylko wartościowo, stąd invalid typecast (int64(real)), wiec trzeba było dodać jakis typ pośredni. Rzutowanie... Podstawa w (i naleciałośc z) c/cpp :d [mf]