如何计算c ++中给定数字的位数
计算给定数量或用户输入的数字位数。
独立于编程语言:
floor(log10(x))+1
其中x是你的数字(> 0)。
如果你想处理0和负数,我会建议这样的事情:
x == 0 ? 1 : floor(log10(abs(x)))+1
将数字转换为字符串并计算字符数。
我假设您想知道表示二进制数(例如int)需要多少个10位数。
double x = something(positive); double base = 10.0; double digits = ceil(log(x + 1.0) / log(base));