C语言以2为底的对数

Jon*_*eña 0 c logarithm

请问,有人可以帮我如何用 C 计算简单的 log2 吗?我尝试使用这段代码,但它不起作用:

printf( "log( %f ) = %f\n", x, log2(x) );
Run Code Online (Sandbox Code Playgroud)

cdl*_*ane 5

#include <stdio.h>
#include <math.h>

int main() {
    double x = 42.0;

    printf( "log( %f ) = %f\n", x, log2(x) );

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出

% ./a.out
log( 42.000000 ) = 5.392317
%
Run Code Online (Sandbox Code Playgroud)