modf, modff
Fractionne une valeur à virgule flottante en différentes parties fractionnaires et entières.
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
);
Paramètres
x
valeur à virgule flottante.intptr
Pointeur vers la partie entière stockée.
Valeur de retour
Cette fonction retourne la partie fractionnaire signée *par X.*Il n'existe aucun retour d'erreur.
Notes
La fonction d' modf détaille la valeur à virgule flottante X en différentes parties fractionnaires et entières, qui a le même signature que le X. La partie fractionnaire signée x est retournée.La partie entière est signalée comme valeur à virgule flottante à l'intptr.
modf a une implémentation qui utilise les extensions Streaming SIMD 2 (SSE2).Consultez _set_SSE2_enable pour des informations et des restrictions à utiliser l'implémentation SSE2.
C++ permet la surcharge, vous pouvez appeler des surcharges d' modf.Dans un programme c, modf toujours prend deux doubles valeurs et retourne une valeur double.
Configuration requise
routine |
en-tête requis |
---|---|
modf, modff |
<math.h> |
Pour des informations de compatibilité supplémentaires, consultez compatibilité dans l'introduction.
bibliothèques
toutes les versions de Bibliothèques runtime C.
Exemple
// 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 );
}
Sortie
For -14.876543, the fraction is -0.876543 and the integer is -14