mfc一个字符型是占8个位,这8个位是二进制0,1的组合排列,那如何将这8位按顺序两个两个取出来,

mfc一个字符型是占8个位,这8个位是二进制0,1的组合排列,那如何将这8位按顺序两个两个取出来,作为4对。这4对是00,01,10,11。现在怎么把这4对转化为一个十进... mfc一个字符型是占8个位,这8个位是二进制0,1的组合排列,那如何将这8位按顺序两个两个取出来,作为4对。这4对是00,01,10,11。现在怎么把这4对转化为一个十进制的数,也就是0,1,2,3? 展开
 我来答
金色潜鸟
推荐于2016-08-08 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5714万
展开全部
用按位与和移位可以取出需要的位,用 %x 输出格式得 16 进制结果,用 %d 格式输出得 10 进制结果。c 语言完整程序如下。

#include<stdio.h>
#include<stdlib.h>
int main(){
char a=0x1b;
int i,b[4];
printf("a=%#x\n",a);
b[0]= a >> 6;
b[1]= (a & 0x30) >>4;
b[2]= (a & 0x0c ) >> 2;
b[3]= a & 0x03;
for (i=0;i<4;i++) printf("0x%02x - %d\n",b[i]);
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式