请问怎样将01串直接写入二进制文件

移位再拼起来就好了啊,用C还怕写不出来……文件用fopen(\u0026#39;xxx.bin\u0026#39;, \u0026#39;wb\u0026#39;)打开,然后用fwrite直接写二进制数据。由于你的二进制数字不一定是8的整数倍,你可以在二进制数字串后面补一个1,再补0凑成8的倍数个二进制数字,读取的时候先把结尾的0去掉,再去掉一个1,就可以还原到原来的二进制串。
■网友
8个字符转64位无符号数。unsigned long bin=0for(int i=8;--i\u0026gt;=0;){bin*=2;if(str==\u0026#39;1\u0026#39;)b+=1;}
■网友
8位8位得存,文件头部加一个比特位长度就行了,最多浪费7个比特位。实际上,硬盘是按扇区为单位存的,一般一个扇区为4kb。所以你的文件可能最大浪费4kb减一个字节。具体看看文件属性中的文件大小与占用空间


    推荐阅读