modf, modff
Dzieli wartość zmiennoprzecinkowa na ułamkowe i części liczby całkowitej.
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
Wartość zmiennoprzecinkowa.intptr
Wskaźnik do części przechowywanej liczby całkowitej.
Wartość zwracana
Ta funkcja zwraca podpisany część ułamkową liczby x.Istnieje bez powrotu błąd.
Uwagi
modf Funkcja dzieli wartość zmiennoprzecinkowa x do ułamkowe i całkowitą części, z których każda ma taki sam znak jak x. Podpisana część ułamkowa x jest zwracany.Część całkowita jest przechowywana jako wartość zmiennoprzecinkowa na intptr.
modfjest implementacja używa Streaming SIMD Extensions 2 (SSE2).Zobacz _set_SSE2_enable informacji i ograniczenia dotyczące korzystania z implementacji SSE2.
C++ zezwala na przeciążenie, więc można wywoływać przeciążenia modf.W programie c modf zawsze przyjmuje dwa podwójne wartości i zwraca wartość podwójną.
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
modf, modff |
<math.h> |
Aby uzyskać dodatkowe informacje o zgodności, zobacz zgodności we wprowadzeniu.
Biblioteki
Wszystkie wersje biblioteki uruchomieniowej c.
Przykład
// 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 );
}
Dane wyjściowe
For -14.876543, the fraction is -0.876543 and the integer is -14