std:: log10, std:: log10f, std:: log10l
|
Definiert im Header
<cmath>
|
||
| (1) | ||
|
float
log10
(
float
num
)
;
double
log10
(
double
num
)
;
|
(bis C++23) | |
|
/*floating-point-type*/
log10 ( /*floating-point-type*/ num ) ; |
(seit C++23)
(constexpr seit C++26) |
|
|
float
log10f
(
float
num
)
;
|
(2) |
(seit C++11)
(constexpr seit C++26) |
|
long
double
log10l
(
long
double
num
)
;
|
(3) |
(seit C++11)
(constexpr seit C++26) |
|
SIMD-Überladung
(seit C++26)
|
||
|
Definiert im Header
<simd>
|
||
|
template
<
/*math-floating-point*/
V
>
constexpr
/*deduced-simd-t*/
<
V
>
|
(S) | (seit C++26) |
|
Zusätzliche Überladungen
(seit C++11)
|
||
|
Definiert im Header
<cmath>
|
||
|
template
<
class
Integer
>
double log10 ( Integer num ) ; |
(A) | (constexpr seit C++26) |
std::log10
für alle cv-unqualifizierten Gleitkommatypen als Typ des Parameters.
(seit C++23)
|
S)
Die SIMD-Überladung führt eine elementweise
std::log10
-Operation auf
v_num
durch.
|
(seit C++26) |
|
A)
Zusätzliche Überladungen werden für alle Ganzzahltypen bereitgestellt, die als
double
behandelt werden.
|
(since C++11) |
Inhaltsverzeichnis |
Parameter
| num | - | Gleitkomma- oder Ganzzahlwert |
Rückgabewert
Wenn keine Fehler auftreten, wird der dekadische Logarithmus (Basis- 10 ) von num ( log 10 (num) oder lg(num) ) zurückgegeben.
Wenn ein Domänenfehler auftritt, wird ein implementierungsdefinierter Wert zurückgegeben (NaN, sofern unterstützt).
Wenn ein Polfehler auftritt,
-HUGE_VAL
,
-HUGE_VALF
, oder
-HUGE_VALL
wird zurückgegeben.
Fehlerbehandlung
Fehler werden gemeldet, wie in math_errhandling spezifiziert.
Ein Domänenfehler tritt auf, wenn num kleiner als null ist.
Polfehler kann auftreten, wenn num null ist.
Wenn die Implementierung IEEE-Gleitkommaarithmetik (IEC 60559) unterstützt,
- Wenn das Argument ±0 ist, wird -∞ zurückgegeben und FE_DIVBYZERO wird ausgelöst.
- Wenn das Argument 1 ist, wird +0 zurückgegeben.
- Wenn das Argument negativ ist, wird NaN zurückgegeben und FE_INVALID wird ausgelöst.
- Wenn das Argument +∞ ist, wird +∞ zurückgegeben.
- Wenn das Argument NaN ist, wird NaN zurückgegeben.
Hinweise
Die zusätzlichen Überladungen müssen nicht exakt wie (A) bereitgestellt werden. Sie müssen lediglich sicherstellen, dass für ihr Argument num vom Ganzzahltyp std :: log10 ( num ) dieselbe Wirkung hat wie std :: log10 ( static_cast < double > ( num ) ) .
Beispiel
#include <cerrno> #include <cfenv> #include <cmath> #include <cstring> #include <iostream> // #pragma STDC FENV_ACCESS ON int main() { std::cout << "log10(1000) = " << std::log10(1000) << '\n' << "log10(0.001) = " << std::log10(0.001) << '\n' << "base-5 logarithm of 125 = " << std::log10(125) / std::log10(5) << '\n'; // special values std::cout << "log10(1) = " << std::log10(1) << '\n' << "log10(+Inf) = " << std::log10(INFINITY) << '\n'; // error handling errno = 0; std::feclearexcept(FE_ALL_EXCEPT); std::cout << "log10(0) = " << std::log10(0) << '\n'; if (errno == ERANGE) std::cout << " errno == ERANGE: " << std::strerror(errno) << '\n'; if (std::fetestexcept(FE_DIVBYZERO)) std::cout << " FE_DIVBYZERO raised\n"; }
Mögliche Ausgabe:
log10(1000) = 3
log10(0.001) = -3
base-5 logarithm of 125 = 3
log10(1) = 0
log10(+Inf) = inf
log10(0) = -inf
errno == ERANGE: Numerical result out of range
FE_DIVBYZERO raised
Siehe auch
|
(C++11)
(C++11)
|
berechnet den natürlichen Logarithmus (Basis
e
) (
ln(x)
)
(Funktion) |
|
(C++11)
(C++11)
(C++11)
|
Logarithmus zur Basis
2
der gegebenen Zahl (
log
2
(x)
)
(Funktion) |
|
(C++11)
(C++11)
(C++11)
|
natürlicher Logarithmus (zur Basis
e
) von
1
plus der gegebenen Zahl (
ln(1+x)
)
(Funktion) |
|
komplexer dekadischer Logarithmus mit Verzweigungsschnitten entlang der negativen reellen Achse
(Funktionsschablone) |
|
|
wendet die Funktion
std::log10
auf jedes Element des Valarray an
(Funktionsschablone) |
|
|
C-Dokumentation
für
log10
|
|