log, logf, log10, log10f

 

Pour obtenir la dernière documentation sur Visual Studio 2017 RC, consultez Documentation Visual Studio 2017 RC.

Calcule le logarithme.

  
      double log(  
   double x   
);  
float log(  
   float x  
);  // C++ only  
long double log(  
   long double x  
);  // C++ only  
float logf(  
   float x   
);  
double log10(  
   double x  
);  
float log10(  
   float x  
);  // C++ only  
long double log10(  
   long double x  
);  // C++ only  
float log10f (  
   float x  
);  

Paramètres

x
Valeur dont le logarithme doit être trouvé.

Le journal fonctions renvoient le logarithme naturel (base e) de x en cas de réussite. Les fonctions log10 retournent le logarithme en base&10;. Si x est négatif, ces fonctions retournent indéfinie, par défaut. Si x est 0, elles retournent INF (infini).

EntréeException SEHException{b> <b}Matherr
± QNAN,INDaucun_DOMAIN
± 0ZERODIVIDE_SING
x< 0></ 0>NON VALIDE_DOMAIN

journal et log10 possède une implémentation qui utilise des Extensions Streaming SIMD 2 (SSE2). Consultez la page _set_SSE2_enable pour plus d’informations et les restrictions sur l’utilisation de la mise en oeuvre SSE2.

C++ autorise la surcharge, vous pouvez appeler des surcharges de journal et log10. Dans un programme C, journal et log10 acceptent et retournent une valeur double toujours.

RoutineEn-tête requis
log, logf, log10,log10f<math.h>

Pour plus d'informations sur la compatibilité, voir Compatibilité dans l'introduction.

Toutes les versions des bibliothèques Runtime C.

// crt_log.c  
/* This program uses log and log10  
 * to calculate the natural logarithm and  
 * the base-10 logarithm of 9,000.  
 */  
  
#include <math.h>  
#include <stdio.h>  
  
int main( void )  
{  
   double x = 9000.0;  
   double y;  
  
   y = log( x );  
   printf( "log( %.2f ) = %f\n", x, y );  
   y = log10( x );  
   printf( "log10( %.2f ) = %f\n", x, y );  
}  

log( 9000.00 ) = 9.104980  
log10( 9000.00 ) = 3.954243  

Pour générer le logarithme d’autres bases, utilisez la relation mathématique : journal b base d’un == logarithme naturel (a) / naturelle connecter (b).

// logbase.cpp  
#include <math.h>  
#include <stdio.h>  
  
double logbase(double a, double base)  
{  
   return log(a) / log(base);  
}  
  
int main()  
{  
   double x = 65536;  
   double result;  
  
   result = logbase(x, 2);  
   printf("Log base 2 of %lf is %lf\n", x, result);  
}  

Log base 2 of 65536.000000 is 16.000000  

Prise en charge de virgule flottante
EXP, expf
_matherr
pow, powf, powl
_Cilog)
_Cilog10)

Afficher: