相关疑难解决方法(0)

如何在文件中打印一位而不是字节?

我正在使用霍夫曼算法开发文件压缩器,现在我面临的问题是:

通过使用该算法:stackoverflow,我得到以下结果:

a,c,e,f,k,l,r,s,t,v,w = 1 time repeated
o = 2 times repeated

a,c,e,f,k,l,r,s,t,v,w = 7.69231%
and
o = 15.3846%
Run Code Online (Sandbox Code Playgroud)

所以我开始插入二进制树,这将得到结果:

o=00
a=010
e=0110
c=0111
t=1000
s=1001
w=1010
v=1011
k=1100
f=1101
r=1110
l=1111
Run Code Online (Sandbox Code Playgroud)

这意味着树中角色的路径,考虑0为左,1为右.

然后单词"stackoverflow"将是:100110000100111010011111000010110110111011011111001010

好吧,我想将整个值放入一个二进制文件中,这将导致47位,这将是6字节,但我只能使它成为47字节,因为最小值将被放入一个文件与fwrite或者fprintf是1byte,使用sizeof(某事物).

比我的问题是:我如何只在我的文件中打印一下?

c++ file huffman-code

3
推荐指数
1
解决办法
2438
查看次数

标签 统计

c++ ×1

file ×1

huffman-code ×1