VC++中二进制数如何转换为十六进制 以及如何得到移位符移出的数据

例如a=100101010101111 右移4为得到1111;

1. 二进制和十六进制本质是一样的,不知道你为什么非要转换,如果非要转,那么就四位一处理,也就是四个二进制位对应一个十六进制位。

2. 要想得到移位移出的数据,只能自己记录移出了哪些数据

int count = 4 ; //移位数
int temp = 0 ;
int num ; // 要移位的数
int a[10] ;// 记录移出的数
while(temp < count)
{
a[temp] = num & 1 ;
num >>= 1 ;
temp++ ;
}

这样,移位完成后,数组a中就是移出的数了
温馨提示:答案为网友推荐,仅供参考
相似回答