Namensräume
Varianten
Aktionen

std::numeric_limits::digits10

Aus cppreference.com

 
 
 
Geben Sie Unterstützung
Grundtypen
Original:
Basic types
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Grundtypen
Feste Breite Integer-Typen (C++11)
Numerische Grenzen
Original:
Numeric limits
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
numeric_limits
C numerische begrenzt Schnittstelle
Laufzeit-Typinformationen
Original:
Runtime type information
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Exterieur
Original:
Type traits
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Primären Typ Kategorien
Original:
Primary type categories
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
is_void(C++11)
is_array(C++11)
is_pointer(C++11)
is_enum(C++11)
is_union(C++11)
is_class(C++11)
is_function(C++11)
is_object(C++11)
is_scalar(C++11)
is_compound(C++11)
is_integral(C++11)
is_floating_point(C++11)
is_fundamental(C++11)
is_arithmetic(C++11)
is_reference(C++11)
is_lvalue_reference(C++11)
is_rvalue_reference(C++11)
is_member_pointer(C++11)
is_member_object_pointer(C++11)
is_member_function_pointer(C++11)
Typ Eigenschaften
Original:
Type properties
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
is_const(C++11)
is_volatile(C++11)
is_pod(C++11)
is_empty(C++11)
is_polymorphic(C++11)
is_abstract(C++11)
Unterstützte Operationen
Original:
Supported operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
is_constructible
is_trivially_constructible
is_nothrow_constructible
(C++11)
(C++11)
(C++11)
is_default_constructible
is_trivially_default_constructible
is_nothrow_default_constructible
(C++11)
(C++11)
(C++11)
is_copy_constructible
is_trivially_copy_constructible
is_nothrow_copy_constructible
(C++11)
(C++11)
(C++11)
is_move_constructible
is_trivially_move_constructible
is_nothrow_move_constructible
(C++11)
(C++11)
(C++11)
is_assignable
is_trivially_assignable
is_nothrow_assignable
(C++11)
(C++11)
(C++11)
is_copy_assignable
is_trivially_copy_assignable
is_nothrow_copy_assignable
(C++11)
(C++11)
(C++11)
is_move_assignable
is_trivially_move_assignable
is_nothrow_move_assignable
(C++11)
(C++11)
(C++11)
is_destructible
is_trivially_destructible
is_nothrow_destructible
(C++11)
(C++11)
(C++11)
has_virtual_destructor(C++11)
Beziehungen und Eigentum Abfragen
Original:
Relationships and property queries
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
is_same(C++11)
is_base_of(C++11)
is_convertible(C++11)
alignment_of(C++11)
rank(C++11)
extent(C++11)
Typ Modifikationen
Original:
Type modifications
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
remove_cv
remove_const
remove_volatile
(C++11)
(C++11)
(C++11)
add_cv
add_const
add_volatile
(C++11)
(C++11)
(C++11)
make_signed(C++11)
make_unsigned(C++11)
Typ Transformationen
Original:
Type transformations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
aligned_storage(C++11)
aligned_union(C++11)
decay(C++11)
enable_if(C++11)
conditional(C++11)
common_type(C++11)
underlying_type(C++11)
result_of(C++11)
Typ-Trait-Konstanten
Original:
Type trait constants
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
integral_constant(C++11)
 
std::numeric_limits
 
static const int digits10
(bis C + +11)
static constexpr int digits10
(seit C++11)
Der Wert std::numeric_limits<T>::digits10 ist die Anzahl der Basis-10 Ziffern, die durch den Typ T unverändert dargestellt werden kann, das heißt, jedes Zahl mit so vielen Dezimalstellen kann auf einen Wert des Typs T und zurück nach dezimaler Form umgewandelt werden, ohne Änderung durch Rundung oder Überlauf. Für Basis-radix Typen, ist es das Wert digits (digits-1 für Fließkomma-Typen) multipliziert von log
10
(radix)
und abgerundet .
Original:
The value of std::numeric_limits<T>::digits10 is the number of base-10 digits that can be represented by the type T without change, that is, any number with this many decimal digits can be converted to a value of type T and back to decimal form, without change due to rounding or overflow. For base-radix types, it is the value of digits (digits-1 for floating-point types) multiplied by log
10
(radix)
and rounded down.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[Bearbeiten] Standard Spezialisierungen

T
Wert std::numeric_limits<T>::digits10
Original:
value of std::numeric_limits<T>::digits10
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
/* non-specialized */ 0
bool 0
char std::numeric_limits<char>::digits * std::log10(2)
signed char std::numeric_limits<signed char>::digits * std::log10(2)
unsigned char std::numeric_limits<unsigned char>::digits * std::log10(2)
wchar_t std::numeric_limits<wchar_t>::digits * std::log10(2)
char16_t std::numeric_limits<char16_t>::digits * std::log10(2)
char32_t std::numeric_limits<char32_t>::digits * std::log10(2)
short std::numeric_limits<short>::digits * std::log10(2)
unsigned short std::numeric_limits<signed short>::digits * std::log10(2)
int std::numeric_limits<int>::digits * std::log10(2)
unsigned int std::numeric_limits<signed int>::digits * std::log10(2)
long std::numeric_limits<long>::digits * std::log10(2)
unsigned long std::numeric_limits<unsigned long>::digits * std::log10(2)
long long std::numeric_limits<long long>::digits * std::log10(2)
unsigned long long std::numeric_limits<unsigned long long>::digits * std::log10(2)
float FLT_DIG
double DBL_DIG
long double LDBL_DIG

[Bearbeiten] Beispiel

Ein 8-Bit-Binär-Typ kann zwei beliebige zweistellige Dezimalzahl exakt darstellen, aber 3-stellige Dezimalzahlen 256 .. 999 können nicht dargestellt werden. Der Wert digits10 für einen 8-Bit-Typ ist 2 (8 * std::log10(2) ist 2.41)
Original:
An 8-bit binary type can represent any two-digit decimal number exactly, but 3-digit decimal numbers 256..999 cannot be represented. The value of digits10 for an 8-bit type is 2 (8 * std::log10(2) is 2.41)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Die Standard-32-Bit IEEE 754 Floating-Point-Typ hat eine 24-Bit-Bruchteil (23 Bit geschrieben, ein stillschweigend), die darauf hindeuten, dass es 7-stellige Dezimalzahlen (24 * std::log10(2) ist 7.22) darstellen kann , sondern relativ Rundungsfehler sind nicht einheitlich und einige Fließkommawerte mit 7 Dezimalstellen nicht überleben Umstellung auf 32-Bit-Float-und zurück: die kleinste positive Beispiel ist 8.589973e9, die 8.589974e9 nach der Rundreise wird diese Rundungsfehler nicht überschreiten kann. ein Bit in der Darstellung und digits10 als (24-1)*std::log10(2), die 6,92 ist, berechnet. Abrunden ergibt den Wert 6 .
Original:
The standard 32-bit IEEE 754 floating-point type has a 24 bit fractional part (23 bits written, one implied), which may suggest that it can represent 7 digit decimals (24 * std::log10(2) is 7.22), but relative rounding errors are non-uniform and some floating-point values with 7 decimal digits do not survive conversion to 32-bit float and back: the smallest positive example is 8.589973e9, which becomes 8.589974e9 after the roundtrip. These rounding errors cannot exceed one bit in the representation, and digits10 is calculated as (24-1)*std::log10(2), which is 6.92. Rounding down results in the value 6.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[Bearbeiten] Siehe auch

[statisch]
die Radix oder Integer Basis durch die Darstellung des angegebenen Typs verwendet
Original:
the radix or integer base used by the representation of the given type
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(public static Mitglied konstanten) [edit]
[statisch]
Anzahl von Ziffern, die radix unverändert dargestellt werden kann
Original:
number of radix digits that can be represented without change
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(public static Mitglied konstanten) [edit]
[statisch]
eine mehr als die kleinste negative Macht des Radix, die eine gültige normalisierten Gleitkomma-Wert ist
Original:
one more than the smallest negative power of the radix that is a valid normalized floating-point value
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(public static Mitglied konstanten) [edit]
[statisch]
eine mehr als die größte ganze Macht der radix, die eine gültige endlichen Floating-Point-Wert ist
Original:
one more than the largest integer power of the radix that is a valid finite floating-point value
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(public static Mitglied konstanten) [edit]