您的位置:首页 > 其它

不用任何位操作,获得一个int变量的第九位

2013-04-11 14:41 260 查看
不用任何位操作(&、|、^、<<、>>、~),实现一个函数,得到一个int型数的第九位(从第一位开始计数)

int check()
{
union utype
{
int i;
char c;
};
utype u;
u.i=1;
return u.c==1;
}

int getbit(int val)
{
char *p=(char *)&val;
p++;
if(check())
return (*p)%2;   //如果是小端模式

else
return (*p)/128; //如果大端模式
}


int get9thbit(int val)

{

return (val/256)%2;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐