log()

log ist definiert in der math, die in C über math.h, bzw. in C++ über cmath eingebunden wird.

Funktion

log berechnet den natürlichen Logarithmus, also zur Basis e, der Eulerschen Zahl, die etwa 2,7182818284590452 entspricht.

Signatur

#include <math.h>
double      log(      double x );       
float       log(       float x );  // nur C++
long double log( long double x );  // nur C++

x: Wert, dessen Logarithmus zur Basis e bestimmt werden soll

Return value: Wert, der als Potenz zu e x ergibt

Fehlerquellen

Wird als Parameter ein negativer Wert genommen, so wird die globale Variable errno auf EDOM gesetzt. Ist x gleich Null, so wird -HUGE_VAL zurückgegeben und errno auf ERANGE gesetzt.

Beispiel

#include <stdlib.h> // für EXIT_SUCCESS
#include <math.h>   // für log10
#include <stdio.h>  // für printf()
 
int main( void )
{
  double value = 10000;
  double power;
 
  power = log( value );
 
  printf( "e^%f entspricht %f\n", power, value );
 
  return EXIT_SUCCESS; 
}

Ausgabe:

e^9.210340 entspricht 10000.000000

Hinweis

Wer das Ergebnis des Beispielprogramms mit dem aus exp() vergleicht, wird feststellen, dass es hier zu Ungenauigkeiten kommt, die darin begründet liegen, dass Fließkommazahlen in den seltensten Fällen eine exakte Repräsentation von Zahlen ermöglichen.

siehe auch