lgs770950672 发表于 2014-10-15 14:12:31

c 十进制转二进制的问题

大神帮帮忙,真心看不懂,为什么要这样去做

avatar10010 发表于 2014-10-15 15:00:55

本帖最后由 avatar10010 于 2014-10-15 15:07 编辑

.

avatar10010 发表于 2014-10-15 15:06:06

本帖最后由 avatar10010 于 2014-10-15 15:07 编辑

如果a的第16位是0就打印0
如果a的第16位是1就打印1
简化如下
int n=sizeof(char)*8*2;
int mask=n-1;
for(int i=1;i<=n;++i)
{
putchar((a>>mask)&1?'1':'0');
......
}

大个的糖果 发表于 2014-10-30 15:57:47

damingdingdin 发表于 2014-10-30 16:13:21

就是判断a的最高位是不是1,是就输出1,不是输出0
页: [1]
查看完整版本: c 十进制转二进制的问题