C语言十进制转二进制(移位法)
#include <stdio.h>
int main()
{
char strBinary[sizeof(int)*8+1];
int a = 100;
// 让p指向strBinary的最后一位
char *p = strBinary + sizeof(int)*8;
*p = '/0';
while (a)
{
--p;
*p = (a & 1) + 0x30; // 加0x30转变成字符
a >>= 1; // 右移一位
}
printf("%s/n", p);
return 0;
}
发表回复