char
const
* Bin(
int
n)
//返回二进制数的字符串表示,返回值存放在静态存储区中,不能修改
//本函数在多线程情况下是非线程安全的
{
static
char
szBin[
sizeof
(int)*8+1];
szBin[
sizeof
(int)]=0;
char
*p=&szBin[sizeof(int)-1];
char
*pBin=p;
*p='0';
while
(n)
{
*p=(n&1)+'0';
if
(*p=='1')
pBin=p;
--p;
n>>=1;
}
return
pBin;
}