当前位置:编程学习 > C#/ASP.NET >>

一个C语言的函数,求解答

void To2Bin(char p[8],int b[64])    //将字节转换成二进制流
{
int i,k=0;

for(i=0;i<8;i++) 
{
int j=0x80;
for(;j;j>>=1)
{
if(j&p[i])
{
b[k++]=1;     
}
else   
{
b[k++]=0;   
}
}
}    
}


红色字体的代码块的具体含义。
为什么J要是80;if语句有什么用?
C 二进制 --------------------编程问答-------------------- 没有人吗?????? --------------------编程问答-------------------- for(;j;<j<<=1)
提示 >>=1 是移位,也就是 除2 
--------------------编程问答-------------------- 0x80是二进制的 10000000
右移一位 就是 01000000 
整数和他做与(&)操作得到的就是二进制咯 --------------------编程问答-------------------- 你们说的我都知道。假如说我p数组是197abc51第一轮for结束后b数组存的就是0000001完全不能够反映出我的原数据 --------------------编程问答-------------------- 来人啊!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --------------------编程问答-------------------- 0000001 不就是 197abc51中第一个字节‘1’的二进制吗? --------------------编程问答-------------------- 顶sizyx  --------------------编程问答-------------------- 好了,谢谢大家。明白了 --------------------编程问答--------------------
补充:.NET技术 ,  VC.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,