问题
Is there a function or any other way to calculate in C the logarithm of base x, where x is an integer variable of my program?
回答1:
C doesn't provide functions to compute logarithms of any bases other than e or 10.
So just use math:
logarithm of x base b = log(x)/log(b)
If you'll be doing the logarithms over the same base repeatedly, you can precompute 1/log(b).
I wouldn't rely on the compiler being able to do this optimization for you.
来源:https://stackoverflow.com/questions/11054740/logarithm-function-of-an-arbitrary-integer-base-in-c