Provided by: manpages-de-dev_4.21.0-2_all bug

BEZEICHNUNG

       pow, powf, powl - Potenzfunktionen

BIBLIOTHEK

       Mathematik-Bibliothek (libm, -lm)

ÜBERSICHT

       #include <math.h>

       double pow(double x, double y);
       float powf(float x, float y);
       long double powl(long double x, long double y);

   Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)):

       powf(), powl():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
               || /* Seit Glibc 2.19: */ _DEFAULT_SOURCE
               || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

BESCHREIBUNG

       Diese Funktionen geben die y-te Potenz von x zurück.

RÜCKGABEWERT

       Bei erfolgreicher Ausführung geben diese Funktionen die y-te Potenz von x zurück.

       Bei  einem  Überlauf des Ergebnisses tritt ein Ergebnis-Bereichsfehler ein; die Funktionen
       geben entsprechend HUGE_VAL, HUGE_VALF  oder  HUGE_VALL  mit  dem  mathematisch  richtigen
       Vorzeichen zurück.

       Wenn  im Ergebnis eine Bereichsunterschreitung auftritt und das Ergebnis nicht darstellbar
       ist, tritt ein Ergebnis-Bereichsfehler ein. In diesem Fall ist der  Rückgabewert  0.0  mit
       dem geeigneten Vorzeichen.

       Wenn  x  gleich  +0  oder  -0  und y eine ungerade ganze Zahl kleiner als 0 ist, tritt ein
       Polfehler ein. Der Rückgabewert ist  dann  HUGE_VAL,  HUGE_VALF  oder  HUGE_VALL  mit  dem
       Vorzeichen von x.

       Wenn  x gleich +0 oder -0 ist und y kleiner als 0 und keine ungerade ganze Zahl ist, tritt
       ein Polfehler ein. Der Rückgabewert ist dann HUGE_VAL, HUGE_VALF oder HUGE_VALL.

       Wenn x gleich +0 (-0) und y eine ungerade ganze Zahl größer als 0 ist, ist das Ergebnis +0
       (-0).

       Wenn x gleich 0 und y größer als 0 und keine ungerade ganze Zahl ist, ist das Ergebnis +0.

       Wenn x gleich -1 und y positiv unendlich oder negativ unendlich ist, ist das Ergebnis 1.0.

       Wenn x den Wert +1 hat, dann ist das Ergebnis 1.0 (sogar wenn y ein »NaN« ist).

       Wenn y den Wert 0 hat, dann ist das Ergebnis 1.0 (sogar wenn x ein »NaN« ist).

       Falls  x  ein  endlicher  Wert kleiner 0 und y endlich und keine ganze Zahl (Integer) ist,
       tritt ein Eingabe-Bereichsfehler (»domain error«) auf und es wird ein NaN zurückgegeben.

       Wenn der Absolutwert von x kleiner als 1 ist und y negativ unendlich ist, ist das Ergebnis
       positiv unendlich.

       Wenn der Absolutwert von x größer als 1 und y negativ unendlich ist, ist das Ergebnis +0.

       Wenn der Absolutwert von x kleiner als 1 und y positiv unendlich ist, ist das Ergebnis +0.

       Wenn  der  Absolutwert  von  x  größer als 1 und y positiv unendlich ist, ist das Ergebnis
       positiv unendlich.

       Wenn x negativ unendlich und y eine ungerade ganze Zahl (Integer) kleiner 0 ist,  ist  das
       Ergebnis -0.

       Wenn  x  negativ unendlich und y keine ungerade ganze Zahl kleiner 0 ist, ist das Ergebnis
       +0.

       Wenn x negativ unendlich und y eine ungerade ganze Zahl größer 0  ist,  ist  das  Ergebnis
       negativ unendlich.

       Wenn  x  negativ  unendlich  und y größer als 0 und keine ungerade ganze Zahl ist, ist das
       Ergebnis positiv unendlich.

       Wenn x positiv unendlich und y kleiner als 0 ist, ist das Ergebnis +0.

       Wenn x positiv unendlich und y größer als Null ist, ist das Ergebnis positiv unendlich.

       Mit Ausnahme der im Vorgehenden beschriebenen Fälle ist das Ergebnis  ein  »NaN«,  wenn  x
       oder y ein »NaN« ist.

FEHLER

       In  math_error(7)  erfahren  Sie,  wie  Sie  Fehler  bei  der Ausführung dieser Funktionen
       erkennen.

       Die folgenden Fehler können auftreten:

       Eingabe-Bereichsfehler:  x  ist  negativ  und  y  ist  eine  endliche,  nicht  ganze  Zahl
       (noninteger).
              errno  wird  auf  EDOM  gesetzt. Es wird der Fließkomma-Ausnahmefehler »unzulässige
              Fließkommazahl« (FE_INVALID) ausgelöst.

       Polfehler: x ist 0 und y ist negativ.
              errno   wird   auf   ERANGE   gesetzt   (siehe   aber   FEHLER).   Es   wird    der
              Fließkomma-Ausnahmefehler »Division durch Null« (FE_DIVBYZERO) ausgelöst.

       Ergebnis-Bereichsfehler: Überlauf
              errno  wird  auf  ERANGE  gesetzt. Es wird ein Fließkomma-Ausnahmefehler »Überlauf«
              (FE_OVERFLOW) ausgelöst.

       Ergebnis-Bereichsfehler: Unterschreitung
              errno  wird   auf   ERANGE   gesetzt.   Es   wird   der   Fließkomma-Ausnahmefehler
              »Unterschreitung« (FE_UNDERFLOW) ausgelöst.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

       ┌───────────────────────────────────────────────────────┬───────────────────────┬─────────┐
       │SchnittstelleAttributWert    │
       ├───────────────────────────────────────────────────────┼───────────────────────┼─────────┤
       │pow(), powf(), powl()                                  │ Multithread-Fähigkeit │ MT-Safe │
       └───────────────────────────────────────────────────────┴───────────────────────┴─────────┘

STANDARDS

       C99, POSIX.1-2001, POSIX.1-2008.

       Die Variante, die double zurückgibt, ist außerdem konform zu SVr4, 4.3BSD.

FEHLER

   Historische Fehler (jetzt behoben)
       Vor  Glibc 2.28 war pow() für bestimmte (seltene) Eingaben auf einigen Architekturen (z.B.
       X86-64) mehr als 10.000-fach langsamer als bei nahe beiliegenden Eingaben.  Dies  betrifft
       nur pow() und nicht powf() oder powl(). Dieses Problem wurde in Glibc 2.28 behoben.

       Eine Reihe von Fehlern in der Glibc-Implementierung von pow() wurde in Glibc 2.16 behoben.

       Bis  einschließlich Glibc 2.9 wurde errno bei Auftreten eines Polfehlers auf EDOM gesetzt,
       statt auf das von POSIX  vorgeschriebene  ERANGE.  Seit  Glibc  2.10  verhält  sich  Glibc
       richtig.

       Bis  einschließlich  Glibc  2.3.2:  wenn ein Überlauf oder Unterlauf auftritt, erzeugt die
       Glibc-Version  von  pow()  einen   zusätzlichen   (ungültigen)   Fließkomma-Ausnahmefehler
       (FE_INVALID).

SIEHE AUCH

       cbrt(3), cpow(3), sqrt(3)

ÜBERSETZUNG

       Die   deutsche   Übersetzung   dieser   Handbuchseite   wurde   von   Maik   Messerschmidt
       <Maik.Messerschmidt@gmx.net>, Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> und  Helge
       Kreutzmann <debian@helgefjell.de> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die GNU General Public License
       Version 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der  Copyright-
       Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an die Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.