爲什麼std::numeric_limits<Any Int Type>::digits10
比它小1?例如,std::numeric_limits<int8_t>::digits10 == 2
,但是100
由三位數字組成。爲什麼std :: numeric_limits :: digits10對於int類型是少一個?
或std::numeric_limits<int64_t>::digits10 == 18
,但INT64_MAX(9'223'372'036'854'775'807
)由19個數字組成。
[cppreference](http://en.cppreference.com/w/cpp代表/ types/numeric_limits/digits10)表示:「具有這麼多小數位的任何數字都可以由類型保存」。由於999不能用'int8_t'表示,所以答案不能是3. –
@KerrekSB哈,明白了。謝謝! – vladon