Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [C++] Typumwandlung von double zu int (https://www.delphipraxis.net/82731-%5Bc-%5D-typumwandlung-von-double-zu-int.html)

Binärbaum 18. Dez 2006 22:55


[C++] Typumwandlung von double zu int
 
Hallo!

Ich habe eine Frage zu folgendem C/C++-Codestück:
Code:
int randomness;
double decay;

...

randomness = (int)(randomness * decay);
Wie genau wird das Ergebnis der obigen Multiplikation in einen Integer umgewandelt? Wird dabei gerundet oder werden nur die Nachkommastellen "abgeschnitten"?

MfG
Binärbaum

mkinzler 19. Dez 2006 05:32

Re: [C++] Typumwandlung von double zu int
 
Es wird abgeschnitten.

PMM 19. Dez 2006 08:41

Re: [C++] Typumwandlung von double zu int
 
Die entscheidendere Frage ist aber: Wann wird abgeschnitten?
a) randomness -> double, Multiplikation, Ergebnis -> Integer
b) dclay -> Integer, Multiplikation
Das Ergebnis wäre sehr unterschiedlich.
PMM

OregonGhost 19. Dez 2006 10:16

Re: [C++] Typumwandlung von double zu int
 
Zitat:

Die entscheidendere Frage ist aber: Wann wird abgeschnitten?
a) randomness -> double, Multiplikation, Ergebnis -> Integer
b) dclay -> Integer, Multiplikation
Das Ergebnis wäre sehr unterschiedlich.
PMM
Edit: Jetzt verstehe ich erst, was du meinst.
Es wird natürlich auf den größeren Typ erweitert, d.h. randomness -> double. Das Ergebnis der Multiplikation ist double und wird dank der Klammerung anschließend in int umgewandelt, also abgeschnitten.

g-hun 19. Dez 2006 13:37

Re: [C++] Typumwandlung von double zu int
 
also wie ich weiß wird alles nach dem komma abgeschnitten. es wird sozusagen abgerundet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz