核心寫法如下:
unsigned int b;
for(b = 2147483648;b;b>>=1)
{
if(b&a)
{
for(;b;b>>=1)
printf(b&a?"1":"0");
break;
}
else
{
printf("0");
break;
}
}
基本上是把存在記憶體的二進位數直接呈現出來
所以不適合用來轉換負數
核心寫法如下:
unsigned int b;
for(b = 2147483648;b;b>>=1)
{
if(b&a)
{
for(;b;b>>=1)
printf(b&a?"1":"0");
break;
}
else
{
printf("0");
break;
}
}
基本上是把存在記憶體的二進位數直接呈現出來
所以不適合用來轉換負數
抱歉修改一下:
unsigned int b;
for(b = 2147483648;b;b>>=1)
{
if(b&a)
{
for(;b;b>>=1)
printf(b&a?"1":"0");
break;
}
if(a==0)
{
printf("0");
break;
}
}
條件式打錯了