c 十进制转二进制的问题
大神帮帮忙,真心看不懂,为什么要这样去做本帖最后由 avatar10010 于 2014-10-15 15:07 编辑
. 本帖最后由 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');
......
} 就是判断a的最高位是不是1,是就输出1,不是输出0
页:
[1]