modf, modff
Rozdělí do získáme hodnotu s plovoucí desetinnou čárkou a částí celé číslo.
double modf(
double x,
double *intptr
);
float modf(
float x,
float *intptr
); // C++ only
long double modf(
long double x,
long double * intptr
); // C++ only
float modff(
float x,
float *intptr
);
Parametry
x
Hodnota s plovoucí desetinnou čárkou.intptr
Ukazatel na uložené celá část.
Vrácená hodnota
Tato funkce vrací podepsaná část x.Neexistuje žádná chyba návratu.
Poznámky
modf Funkce rozdělí desetinná hodnota x do frakční a celé části, z nichž každá má stejné znaménko jako x. Podepsané desetinnou část x je vrácena.Celá část je uloženo jako hodnota s plovoucí desetinnou čárkou v intptr.
modfmá implementace, která používá Streaming SIMD Extensions 2 (SSE2).Viz _set_SSE2_enable informace a omezení použití implementace SSE2.
C++ umožňuje přetížení, tak můžete volat přetížení z modf.V programu c modf vždy trvá dvě dvojité hodnot a vrátí hodnotu double.
Požadavky
Rutina |
Požadované záhlaví |
---|---|
modf, modff |
<math.h> |
Další informace o kompatibilitě, viz Compatibility v úvodu.
Knihovny
Všechny verze C Runtime knihovny.
Příklad
// 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 );
}
Výsledek
For -14.876543, the fraction is -0.876543 and the integer is -14