Namespaces
Variants

std::numeric_limits<T>:: max_exponent

From cppreference.net
Utilities library
static const int max_exponent ;
(bis C++11)
static constexpr int max_exponent ;
(seit C++11)

Der Wert von std:: numeric_limits < T > :: max_exponent ist die größte positive Zahl n , sodass r n-1
, wobei r gleich std:: numeric_limits < T > :: radix ist, ein darstellbarer endlicher Wert des Gleitkommatyps T ist.

Standardspezialisierungen

T Wert von std:: numeric_limits < T > :: max_exponent
/* nicht spezialisiert */ 0
bool 0
char 0
signed char 0
unsigned char 0
wchar_t 0
char8_t (seit C++20) 0
char16_t (seit C++11) 0
char32_t (seit C++11) 0
short 0
unsigned short 0
int 0
unsigned int 0
long 0
unsigned long 0
long long (seit C++11) 0
unsigned long long (seit C++11) 0
float FLT_MAX_EXP
double DBL_MAX_EXP
long double LDBL_MAX_EXP

Beispiel

Demonstriert die Beziehungen zwischen max_exponent , max_exponent10 und max() für den Typ float :

#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';
}

Ausgabe:

max() = 3.40282e+38
max_exponent10 = 38
max() = 0x1.fffffep+127
max_exponent = 128

Siehe auch

der kleinste negative Exponent zur Basis 10, der einen gültigen normalisierten Gleitkommawert darstellt
(öffentliche statische Memberkonstante)
um eins größer als der kleinste negative Exponent zur Basis des Zahlensystems, der einen gültigen normalisierten Gleitkommawert darstellt
(öffentliche statische Memberkonstante)
der größte ganzzahlige Exponent zur Basis 10, der einen gültigen endlichen Gleitkommawert darstellt
(öffentliche statische Memberkonstante)