frexp
ottiene la mantissa e l'esponente di un numero a virgola mobile.
double frexp(
double x,
int *expptr
);
float frexp(
float x,
int * expptr
); // C++ only
long double frexp(
long double x,
int * expptr
); // C++ only
Parametri
x
valore a virgola mobile.expptr
Puntatore all'esponente Integer memorizzato.
Valore restituito
frexp restituisce la mantissa.se x sono 0, restituisce 0 di funzione per la mantissa che l'esponente.se expptr viene NULL, il gestore non valido di parametro viene richiamato come descritto in Convalida dei parametri.Se l'esecuzione è consentita per continuare, set di questa funzione errno in EINVAL e restituisce 0.
Note
frexp la funzione divide il valore a virgola mobilex) in una mantissa (m) e un esponente (n), in modo che il valore assoluto di m è maggiore o uguale a 0,5 e minore di 1,0 e x = m*2n.l'esponente Integer n viene archiviato nella posizione indicata da expptr.
C++ consente l'overload, pertanto è possibile chiamare gli overload di frexp.In un programma c, frexp sempre accetta un valore double e un intero e restituisce un valore double.
Requisiti
Funzione |
Intestazione di associazione |
---|---|
frexp |
<math.h> |
per informazioni di compatibilità aggiuntive, vedere compatibilità nell'introduzione.
Esempio
// crt_frexp.c
// This program calculates frexp( 16.4, &n )
// then displays y and n.
#include <math.h>
#include <stdio.h>
int main( void )
{
double x, y;
int n;
x = 16.4;
y = frexp( x, &n );
printf( "frexp( %f, &n ) = %f, n = %d\n", x, y, n );
}
Equivalente .NET Framework
Non applicabile. Per chiamare la funzione c standard, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di pinvoke.