字節到位的轉換與位到字節的轉換


 

void ByteToBit(bool *Out,char *In,int bits) //字節到位的轉換
{
 int i;
 for(i=0;i<bits;i++)
  Out[i]=(In[i/8]>>(i%8))&1; //這一步實現原理是什么,看了很久都不明白.In[i/8]意思是?   
}

 


void BitToByte(char *Out,bool *In,int bits) //位到字節轉換
{
 for(int i=0;i<bits/8;i++)
  Out[i]=0;
 for(i=0;i<bits;i++)
  Out[i/8]|=In[i]<<(i%8); //"|="組合了位操作符和賦值操作符的功能
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM