![]() |
1
24
使用
注意,这对负数不起作用,您必须使用
如果负号加1
|
![]() |
2
13
可能比使用log或int-to-string转换要快得多,而且不使用任何库函数:
在Jeff Yates关注之后: 对于那些担心整数大小与32位不同的人 (类似于pmg的解,但仍然更快,因为乘法比除法快:-)
|
![]() |
3
5
使用以10为底的对数:
|
![]() |
4
5
还有一个选择
这比使用
|
![]() |
5
2
一种更通用的解决方案,特别是如果您想知道打印的长度
|
![]() |
6
1
如果你的整数值(例如。
这样,编译器将自动计算小数位数,并将该值作为常量填写。它应该是最快的解决方案,因为不涉及运行时计算,整数常量通常被放入指令操作码中。(这意味着它们通过指令流水线运行,而不是通过数据存储器/缓存。)但是,这需要一个支持C++ 11的编译器。 |
![]() |
Community wiki · C中有哪些耗时的操作? 1 年前 |
![]() |
Community wiki · 将所有处理器电源都投入到任务中 1 年前 |
![]() |
Community wiki · C++为C添加了什么?[已关闭] 1 年前 |
![]() |
Community wiki · 打印1到1000,不带循环或条件 1 年前 |