remainder
, remainderf
remainderl
Berechnet den Rest des Quotienten aus zwei Gleitkommawerten, gerundet auf den nächsten ganzzahligen Wert.
Syntax
double remainder( double x, double y );
float remainderf( float x, float y );
long double remainderl( long double x, long double y );
#define remainder(X, Y) // Requires C11 or higher
float remainder( float x, float y ); /* C++ only */
long double remainder( long double x, long double y ); /* C++ only */
Parameter
x
Der Zähler.
y
Der Nenner.
Rückgabewert
Der Gleitkommarest von x
/ y
. Wenn der Wert von y
0,0 ist, gibt remainder
ein stilles NaN zurück. Informationen zur Darstellung eines ruhigen NaN durch die printf
Familie finden Sie unter printf
, , _printf_l
, . _wprintf_l
wprintf
Hinweise
Die remainder
Funktionen berechnen den Gleitkomma-Rest r
derArt x / y
, x = n * y + r
dass , wobei n
die ganze Zahl, die dem Wert x / y
am nächsten ist und n
auch immer |n - x / y| = 1/2
ist. Wenn r = 0
, r
hat dasselbe Zeichen wie x
.
Da C++ das Überladen zulässt, können Sie Überladungen von remainder
aufrufen, die float
oder long double
-Werte verwenden und zurückgeben. Wenn Sie in einem C-Programm nicht das <Makro tgmath.h> verwenden, um diese Funktion aufzurufen, remainder
werden immer zwei double
Argumente verwendet und ein double
Argument zurückgegeben.
Wenn Sie das Makro <tgmath.h>remainder()
verwenden, bestimmt der Typ des Arguments, welche Version der Funktion ausgewählt ist. Ausführliche Informationen finden Sie unter Typgengenerische Mathematik.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
Anforderungen
Funktion | Erforderlicher Header (C) | Erforderlicher Header (C++) |
---|---|---|
remainder , remainderf remainderl |
<math.h> | <cmath> oder <math.h> |
remainder -Makro |
<tgmath.h> |
Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
// crt_remainder.c
// This program displays a floating-point remainder.
#include <math.h>
#include <stdio.h>
int main( void )
{
double w = -10.0, x = 3.0, z;
z = remainder(w, x);
printf("The remainder of %.2f / %.2f is %f\n", w, x, z);
}
The remainder of -10.00 / 3.00 is -1.000000
Siehe auch
Mathematische Unterstützung und Gleitkommaunterstützung
ldiv
, lldiv
imaxdiv
fmod
, fmodf
remquo
, remquof
remquol