回答
只是隔离位一个接一个,从最高的开始,并打印相应的字符:如果你想在一个字符串,而不是打印到控制台结果
#include <limits.h>
#include <stdio.h>
void print_binary(unsigned x)
{
for (int i = sizeof(x) * CHAR_BIT; i--;)
{
putchar('0' + ((x >> i) & 1));
}
}
int main()
{
print_binary(123);
}
,我确保你可以调整代码。
感谢队友,这个作品。无论如何不要假设它是在32位计算机上运行的呢? (或64位) – user2891805
当然,只需用便携式替换常量31即可,请参阅我的编辑。 – fredoverflow
感谢您花时间帮助。 – user2891805
尝试William Clinger的论文“如何准确读取浮点数”。
http://www.cesura17.net/~will/Professional/Research/Papers/howtoread.pdf –
从下往上获取位。 然后在完成时反转字符串。
string bits(long n)
{
string tmp ;
while (n) { tmp << (n & 1) ? "1" : "0" ; n >>= 1 ; }
tmp= reverse(tmp) ;
return tmp ;
}
- 1. 如何获得char的十六进制值的二进制表示
- 2. 显示一个十进制数成等效的二进制数
- 3. 如何将数字(十进制)转换为二进制(二进制)数字和从二进制到十进制?
- 4. 获得负数的二进制补码的十六进制
- 5. 十进制到二进制(二进制)
- 6. 用十进制数表示的二进制浮点数
- 7. pgsql的数字/十进制二进制表示,可可
- 8. 二进制到十进制
- 9. 十进制数的二进制补码
- 10. C++中整数的十进制,八进制和十六进制表示法
- 11. 十进制到二进制Java方法
- 12. 如何在python中获得十六进制表示法?
- 13. 如何转换OCaml中十六进制,十进制,十进制和二进制数之间的数字?
- 14. 一个关于PHP十进制到二进制的算法
- 15. 十六进制,八进制,二进制到十进制(C++)
- 16. 二进制,八进制,十六进制到十进制程序
- 17. as3 ByteArray转为十六进制(二进制十六进制表示)
- 18. 获取一个整数的十六进制表示,如数学
- 19. 如何选择一个ntext列为二进制/十六进制
- 20. 十六进制表示法
- 21. 如何只获得二进制文件的前十个字节
- 22. 二进制十进制负数位集
- 23. 十进制和二进制数处理
- 24. 十进制素数到二进制
- 25. 如何按二进制表示法对二进制数组进行排序
- 26. 二进制到十进制和十进制到二进制转换器
- 27. 如何从十六进制NSString得到十进制整数int
- 28. 从十六进制到十进制,二进制到十进制和八进制到十进制程序C++
- 29. 将十进制数转换为二进制/十六进制/八进制符号
- 30. .NET十进制的二进制表示形式
您是否尝试过某些东西?如果你有,那是什么问题? –
你应该问自己的问题是:*我怎样才能用手做?*。如果你不明白这个问题,你就不能编写一个程序来解决它。 –
“没有任何用处”等同于我可以复制和粘贴的代码? – usr2564301