我在用C语言格式化输出二进制数时遇到困难。我正在尝试将输出数字分成两组,每组8位数字,用一个空格分隔。
这是我的printf:
printf("%016ld in Binary\n", decNumtoBin);
这是我的输出0000001000101011
我想看起来像是00000010 00101011
按照评论的要求发布为'答案'。为了理解它的工作原理,请记住,您实际上并不是在打印二进制数字,而是在打印十进制数字。而您要做的只是将其分为两部分,只需使用简单的除法和取模就可以轻松完成。
printf("%08ld %08ld in Binary\n", decNumtoBin/100000000, decNumtoBin%100000000);