CARVIEW |
Select Language
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Wed, 23 Jul 2025 05:41:10 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Location: /reference/cmath/frexp/
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 23 Jul 2025 05:41:10 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
ETag: W/"9f35-55Qz3MuGyUK1WPQ69zblOIysD+8"
Content-Encoding: gzip
Breaks the floating point number x into its binary significand (a floating point with an absolute value between
x = significand * 2 exponent
The exponent is stored in the location pointed by exp, and the significand is the value returned by the function.
If x is zero, both parts (significand and exponent) are zero.
If x is negative, the significand returned by this function is negative.
This value is the floating point value whose absolute value lays in the interval
Output:
Reference
C library:
- <cassert> (assert.h)
- <cctype> (ctype.h)
- <cerrno> (errno.h)
-
<cfenv> (fenv.h)C++11
- <cfloat> (float.h)
-
<cinttypes> (inttypes.h)C++11
- <ciso646> (iso646.h)
- <climits> (limits.h)
- <clocale> (locale.h)
- <cmath> (math.h)
- <csetjmp> (setjmp.h)
- <csignal> (signal.h)
- <cstdarg> (stdarg.h)
-
<cstdbool> (stdbool.h)C++11
- <cstddef> (stddef.h)
-
<cstdint> (stdint.h)C++11
- <cstdio> (stdio.h)
- <cstdlib> (stdlib.h)
- <cstring> (string.h)
-
<ctgmath> (tgmath.h)C++11
- <ctime> (time.h)
-
<cuchar> (uchar.h)C++11
- <cwchar> (wchar.h)
- <cwctype> (wctype.h)
Containers:
-
<array>C++11
- <deque>
-
<forward_list>C++11
- <list>
- <map>
- <queue>
- <set>
- <stack>
-
<unordered_map>C++11
-
<unordered_set>C++11
- <vector>
-
Input/Output:
Multi-threading:
-
<atomic>C++11
-
<condition_variable>C++11
-
<future>C++11
-
<mutex>C++11
-
<thread>C++11
-
Other:
- <algorithm>
- <bitset>
-
<chrono>C++11
-
<codecvt>C++11
- <complex>
- <exception>
- <functional>
-
<initializer_list>C++11
- <iterator>
- <limits>
- <locale>
- <memory>
- <new>
- <numeric>
-
<random>C++11
-
<ratio>C++11
-
<regex>C++11
- <stdexcept>
- <string>
-
<system_error>C++11
-
<tuple>C++11
-
<type_traits>C++11
-
<typeindex>C++11
- <typeinfo>
- <utility>
- <valarray>
<cmath> (math.h)
functions
- abs
- acos
-
acoshC++11
- asin
-
asinhC++11
- atan
- atan2
-
atanhC++11
-
cbrtC++11
- ceil
-
copysignC++11
- cos
- cosh
-
erfC++11
-
erfcC++11
- exp
-
exp2C++11
-
expm1C++11
- fabs
-
fdimC++11
- floor
-
fmaC++11
-
fmaxC++11
-
fminC++11
- fmod
-
fpclassifyC++11
- frexp
-
hypotC++11
-
ilogbC++11
-
isfiniteC++11
-
isgreaterC++11
-
isgreaterequalC++11
-
isinfC++11
-
islessC++11
-
islessequalC++11
-
islessgreaterC++11
-
isnanC++11
-
isnormalC++11
-
isunorderedC++11
- ldexp
-
lgammaC++11
-
llrintC++11
-
llroundC++11
- log
- log10
-
log1pC++11
-
log2C++11
-
logbC++11
-
lrintC++11
-
lroundC++11
- modf
-
nanC++11
-
nanfC++11
-
nanlC++11
-
nearbyintC++11
-
nextafterC++11
-
nexttowardC++11
- pow
-
remainderC++11
-
remquoC++11
-
rintC++11
-
roundC++11
-
scalblnC++11
-
scalbnC++11
-
signbitC++11
- sin
- sinh
- sqrt
- tan
- tanh
-
tgammaC++11
-
truncC++11
macro constants
types
function
<cmath> <ctgmath>
frexp
double frexp (double x, int* exp);
double frexp (double x , int* exp); float frexpf (float x , int* exp);long double frexpl (long double x, int* exp);
double frexp (double x , int* exp); float frexp (float x , int* exp);long double frexp (long double x, int* exp);
double frexp (double x , int* exp); float frexp (float x , int* exp);long double frexp (long double x, int* exp); double frexp (T x , int* exp); // additional overloads for integral types
Get significand and exponent
0.5
(included) and 1.0
(excluded)) and an integral exponent for 2
, such that:x = significand * 2 exponent
The exponent is stored in the location pointed by exp, and the significand is the value returned by the function.
If x is zero, both parts (significand and exponent) are zero.
If x is negative, the significand returned by this function is negative.
Header <tgmath.h> provides a type-generic macro version of this function.
Additional overloads are provided in this header (
<cmath>
) for the integral types: These overloads effectively cast x to a double
before calculations (defined for T being any integral type).Parameters
- x
- Value to be decomposed.
- exp
- Pointer to an
int
where the value of the exponent is stored.
Return Value
The binary significand of x.This value is the floating point value whose absolute value lays in the interval
[0.5,1)
which, once multiplied by 2
raised to the power of exp, yields x.Example
|
|
Output:
8.000000 = 0.500000 * 2^4 |
See also
- ldexp
- Generate value from significand and exponent (function)
- log
- Compute natural logarithm (function)
- pow
- Raise to power (function)
Home page | Privacy policy
© cplusplus.com, 2000-2025 - All rights reserved - v3.3.4s
Spotted an error? contact us
© cplusplus.com, 2000-2025 - All rights reserved - v3.3.4s
Spotted an error? contact us