Funktsioon frexp () jaotises C ++ jagab ujukomaarvu binaarseks tähenduseks.
Binaarne tähendus on ujuv punkt, mille absoluutväärtus (mantissa) asub intervallis (0,5, 1) ja täisarvu astendina 2.
Funktsioon on määratletud päisefailis.
Matemaatiliselt,
x = binaarne tähendus * 2 eksponent
kus eksponent salvestatakse expi osutatud asukohta ja binaarne sigand on väärtus, mille tagastab frexp ().
frexp () prototüüp (standardi C ++ 11 järgi)
topelt frexp (topelt x, int * exp); float frexp (float x, int * exp); pikk topelt frexp (pikk topelt x, int * exp); topelt frexp (T x, int * exp); // Integraaltüübi korral
Frexp () funktsiooni saab kaht argumenti ja tagastab binaarne significand väärtus tüüp double, floatvõi long double.
frexp () parameetrid
- x - lagundatav väärtus.
 - exp - osutab täisarvule, kuhu eksponendi väärtus salvestatakse.
 
frexp () Tagastusväärtus
Funktsioon frexp () tagastab binaarse tähenduse, mille absoluutväärtus asub intervallis (0,5, 1). Kui x on null, on nii tähendus kui ka eksponent null.
frexp () tagastusväärtused| Parameeter (x) | Binaarne tähendus | Eksponent | 
|---|---|---|
| 0 | 0 | 0 | 
| x> = 1 | Positiivne | Positiivne | 
| x <= -1 | Negatiivne | Positiivne | 
| -1 <x <0 | Negatiivne | Negatiivne | 
| 0 <x <1 | Positiivne | Negatiivne | 
Näide 1: Kuidas funktsioon frexp () töötab versioonis C ++?
 #include #include using namespace std; int main () ( double x = 6.81, significand; int *exp; significand = frexp(x , exp); cout << x << " = " << significand << " * 2^" << *exp << endl; return 0; ) 
Programmi käivitamisel on väljund järgmine:
6,81 = 0,85125 * 2 3
Näide 2: funktsioon integreeritud tüübiga frexp ()
 #include #include using namespace std; int main () ( double significand; int *exp, x = 25; significand = frexp (x , exp); cout << x << " = " << significand << " * 2^" << *exp << endl; return 0; ) 
Programmi käivitamisel on väljund järgmine:
25 = 0,78125 * 2 5








