Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
\
A lebegőpontos értékeket tört és egész részekre osztja fel.
Szemantika
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
Paraméterek
x
Lebegőpontos érték.
intptr
Mutató a tárolt egész szám részre.
Visszaadott érték
Ez a függvény a tört törtrészét xadja vissza. A hiba nem jelenik meg.
Megjegyzések
A modf függvények a lebegőpontos értéket x tört és egész részekre bontják, amelyek mindegyike ugyanazzal a jellel rendelkezik, mint xa . A függvény visszaadja az aláírt törtrészt x . Az egész rész lebegőpontos értékként van tárolva a következő helyen intptr: .
modf olyan implementációval rendelkezik, amely a Streaming SIMD Extensions 2 -t (SSE2) használja. Az SSE2 implementációval kapcsolatos információkért és korlátozásokért lásd _set_SSE2_enable .
A C++ lehetővé teszi a túlterhelést, így meghívhatja azokat a túlterheléseketmodf, amelyek figyelembe veszik és visszaadják vagy long double paramétereket ad visszafloat. A C programban mindig két dupla értéket vesz fel, modf és dupla értéket ad vissza.
Alapértelmezés szerint ennek a függvénynek a globális állapota hatóköre az alkalmazásra terjed ki. A viselkedés módosításához tekintse meg a globális állapotot a CRT-ben.
Requirements
| Rutin | Kötelező fejléc |
|---|---|
| \ |
C: <math.h>C++: <cmath> vagy <math.h> |
További kompatibilitási információkért lásd: Kompatibilitás.
Example
// 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