modf, modff, modfl

Teilt einen Gleitkommawert in Nachkommastellen und ganze Zahlen.

Syntax

double modf( double x, double * intptr );
float modff( float x, float * intptr );
long double modfl( long double x, long double * intptr );
float modf( float x, float * intptr );  // C++ only
long double modf( long double x, long double * intptr );  // C++ only

Parameter

x
Gleitkommawert.

intptr
Zeiger auf gespeicherten Ganzzahlbereich.

Rückgabewert

Diese Funktion gibt den signierten Bruchteil von x. Es wird kein Fehler zurückgegeben.

Hinweise

Die Funktionen modf teilen den Gleitkommawert x in Nachkommastellen und ganze Zahlen, die alle die gleichen Vorzeichen wie x haben. Der Bruchteil von x mit Vorzeichen wird zurückgegeben. Der ganzzahlige Teil wird als Gleitkommawert bei intptr.

modf ist eine Implementierung, die SIMD-Streamingerweiterungen 2 (SSE2) verwendet. Informationen und Einschränkungen bei der Verwendung der SSE2-Implementierung finden Sie _set_SSE2_enable unter .

Da C++ das Überladen zulässt, können Sie Überladungen von modf aufrufen, die Parameter für float oder long double verwenden und zurückgeben. In einem C-Programm verwendet modf immer zwei double-Werte und gibt einen double-Wert zurück.

Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Informationen zum Ändern dieses Verhaltens finden Sie im Global state in the CRT.

Anforderungen

Routine Erforderlicher Header
modf, modff, modfl C: <math.h>

C++: , <cmath> oder <math.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Beispiel

// crt_modf.c

#include <math.h>
#include <stdio.h>

int main( void )
{
   double x, y, n;

   x = -14.87654321;      /* Divide x into its fractional */
   y = modf( x, &n );     /* and integer parts            */

   printf( "For %f, the fraction is %f and the integer is %.f\n",
           x, y, n );
}
For -14.876543, the fraction is -0.876543 and the integer is -14

Siehe auch

Mathematische und Gleitkommaunterstützung
frexp
ldexp