Freigeben über


remainder, remainderfremainderl

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_lwprintf

Hinweise

Die remainder Funktionen berechnen den Gleitkomma-Rest r derArt x / y , x = n * y + rdass , wobei n die ganze Zahl, die dem Wert x / y am nächsten ist und n auch immer |n - x / y| = 1/2ist. 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 doubleArgument 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, remainderfremainderl <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, remquofremquol