C++ 从int型数据里面提取某一位
假设有int数组y,数组里面的数据都有0,1组成, 现在要提取数据里面的最后一位,然后每8个y的数据组成一个新的int 比如y[8]={0,0,0,1,0,0,0,1},那么输出就是二进制数据00010001
[解决办法]
楼主的问题是什么?
[解决办法]
假设你要求的数是newnum = 0;
针对数组先按位取出位来,temp=y[i]&0x01
然后根据你的要求,位移 temp<<(7-i%8)
然后在按位或起来。newnum
[解决办法]
= temp;
[解决办法]
int y[8]={1,0,0,0,0,0,0,1};
int num=0;
for(int i=0;i<8;i++)
{
if(y[i]==1)
{
num+=(1<<(8-i-1));
}
}