Hallo Leute
Da sich mein MSVC2003 von Gottes Gnaden mit der lrintf() Funktion leider etwas schwer tut und ich ATM zu faul bin, um einen C99-tauglichen Compiler zu installieren, bräuchte ich mal eine kurze Info bezüglich dieser Funktion.
So weit ich mir das zusammengegoogelt habe, rundet die Funktion zur nächsten Ganzzahl, also floor(x + 0.5). Und bei 3.5 wird quasi zufällig auf 3 oder 4 gerundet, je nachdem was am Prozessor gerade eingestellt ist. Richtig?
Ich habe hier nämlich 'nen Code vor der Nase, in dem immer mittels lrintf(x-0.5) gerundet wird. Entweder habe ich die Funktion falsch versanden, oder der Code macht keinen Sinn. *ist gerade etwas verunsichert*
TIA & MfG
Sven
Da sich mein MSVC2003 von Gottes Gnaden mit der lrintf() Funktion leider etwas schwer tut und ich ATM zu faul bin, um einen C99-tauglichen Compiler zu installieren, bräuchte ich mal eine kurze Info bezüglich dieser Funktion.
So weit ich mir das zusammengegoogelt habe, rundet die Funktion zur nächsten Ganzzahl, also floor(x + 0.5). Und bei 3.5 wird quasi zufällig auf 3 oder 4 gerundet, je nachdem was am Prozessor gerade eingestellt ist. Richtig?
Ich habe hier nämlich 'nen Code vor der Nase, in dem immer mittels lrintf(x-0.5) gerundet wird. Entweder habe ich die Funktion falsch versanden, oder der Code macht keinen Sinn. *ist gerade etwas verunsichert*
TIA & MfG
Sven
Das ist normales runden... rint(); und das