std::numeri...max_exponent(3)
π NAME π
okay bestie, welcome to the std::numeri...max_exponent(3) page β the main character is std::numeric_limits::max_exponent, from the C++ Standard Library. The NAME section is literally std::numeric_limits::max_exponent β std::numeric_limits::max_exponent (yes, it repeats, thatβs the bit).
β¨ Synopsis β¨
static const int max_exponent; (until C++11)
static constexpr int max_exponent; (since C++11)
The value of std::numeric_limits<T>::max_exponent is the largest positive number n such that r^(n-1) β where r is std::numeric_limits<T>::radix β is a representable finite value of the floating-point type T. Thatβs the whole vibe: itβs the biggest positive n that still works out to a finite representable floating-point value, no cap.
π«Ά Standard specializations π«Ά
Hereβs the value of std::numeric_limits<T>::max_exponent for each standard specialization:
/* non-specialized */β0boolβ0charβ0signed charβ0unsigned charβ0wchar_tβ0char8_t(since C++20) β0char16_t(since C++11) β0char32_t(since C++11) β0shortβ0unsigned shortβ0intβ0unsigned intβ0longβ0unsigned longβ0long long(since C++11) β0unsigned long long(since C++11) β0floatβFLT_MAX_EXPdoubleβDBL_MAX_EXPlong doubleβLDBL_MAX_EXP
π Example π
This one demonstrates the relationships of max_exponent, max_exponent10, and max() for the type float. The page drops a // Run this code marker, then:
#include <iostream>
#include <limits>
int main()
{
std::cout << "max() = " << std::numeric_limits<float>::max() << '\n'
<< "max_exponent10 = " << std::numeric_limits<float>::max_exponent10 << '\n'
<< std::hexfloat << '\n'
<< "max() = " << std::numeric_limits<float>::max() << '\n'
<< "max_exponent = " << std::numeric_limits<float>::max_exponent << '\n';
}
π Output π
max() = 3.40282e+38
max_exponent10 = 38
max() = 0x1.fffffep+127
max_exponent = 128
π See also π
min_exponent10β[static]the smallest negative power of ten that is a valid normalized floating-point value (public static member constant).min_exponentβ[static]one more than the smallest negative power of the radix that is a valid normalized floating-point value (public static member constant).max_exponent10β[static]the largest integer power of 10 that is a valid finite floating-point value (public static member constant).
byeee bestie, this iconic little page came from http://cppreference.com and is dated 2024.06.10 β drink water, check your exponents, mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: stdman 2024.07.05
- opensuse-leap 16.0: stdman 2024.07.05-bp160.1.9 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms