다음을 통해 공유


log, logf, log10, log10f

로그값을 계산 합니다.

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
);

매개 변수

  • x
    값 로그가 찾을 수 하는 것입니다.

반환 값

해당 로그 함수 반환의 자연 (밑 e) x 성공할 경우.Log10 함수는 밑이 10 인 로그값을 반환합니다.경우 x 는 음수,이 함수는 제한 없이 기본적으로 반환 합니다.경우 x 0, (무한대) INF를 반환 하는 합니다.

입력

SEH 예외

Matherr 예외

± QNAN, 찾기

없음

_DOMAIN

± 0

ZERODIVIDE

_SING

x < 0

잘못 되었습니다.

_DOMAIN

로그log10 스트리밍 SIMD 확장 2 (SSE2)을 사용 하 여 구현 했습니다.참조 하십시오 _set_SSE2_enable 에 대 한 정보와 SSE2 구현을 사용 하 여 제한 합니다.

설명

C + + 수 오버, 오버 로드를 호출할 수 있도록 로그log10.C 프로그램에서 로그log10 항상 사용 하 고 double을 반환 합니다.

요구 사항

루틴

필수 헤더

log, logf, log10,log10f

<math.h>

추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

라이브러리

모든 버전의 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 );
}

Output

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

다른 밑에 대 한 로그를 생성 하려면 수학 관계식을 사용: 기본 b의 로그의 자연 로그 (a) = = / 자연 로그 (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);
}

Output

Log base 2 of 65536.000000 is 16.000000

해당 .NET Framework 항목

참고 항목

참조

부동 소수점 지원

exp, expf

_matherr

pow, powf

_CIlog

_CIlog10