C语言实现01字符转比特流
生活随笔
收集整理的這篇文章主要介紹了
C语言实现01字符转比特流
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
記一個小功能的實現過程,程序中在循環體里使用語句
int num = fwrite(&wrByte,1,i/8,pfw);代替了判斷語句,不知道是判斷每夠8比特寫入一次的效率高還是直接用上面的語句效率高,有待驗證。
int main(int argc, char** argv) {FILE* pfr=NULL,*pfw=NULL;fopen_s(&pfr, argv[1],"rt");if(!pfr){cout<<"打開文件失敗!"<<endl;return -1;}fopen_s(&pfw,".\\Txt2Dat.out","wb");if(!pfw){cout<<"創建文件失敗!"<<endl;return -1;}char orByte[8]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};char orSign[]={0,0xff,0xff,0xff,0xff,0xff,0xff,0xff};char reByte=0,wrByte=0;unsigned int i=0;int count = 0;while(1 == fread(&reByte,1,1,pfr)){wrByte^=(orSign[(reByte - 0x30) % 2] & orByte[i % 8]);++i;int num = fwrite(&wrByte,1,i/8,pfw);wrByte &= orSign[i % 8];i=i%8;++count;}fclose(pfr);fclose(pfw);return 0; }總結
以上是生活随笔為你收集整理的C语言实现01字符转比特流的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微机原理实验4:统计学生成绩
- 下一篇: 买单吧app如何删除账单明细