霍夫曼编码-伪EOF

Huffman Coding - Pseudo EOF

本文关键字:EOF 编码 霍夫曼      更新时间:2023-10-16

我已经编码了huffman树,没有问题,但现在我希望在文件和树中添加伪EOF,这样我就知道何时停止从文件读取。

我完全掌握伪EOF的概念。我也知道没有ASCII值为> 255的字符。

我不完全理解的是在输入文件中添加那个字符。如果它必须是一个非ascii字符(因为它们可以在文件中),那么我应该添加什么字符来表示EOF?

我不确定你是否真的理解"伪EOF"是什么。

首先,根据注释,没有大于256的ASCII字符。也不需要。

你被要求做的是在代码中模拟这一点。假设您有一个读取字符的函数:

int getchar(fhandle);

这个函数将返回0到255之间的值来表示ASCII字符。它还可以返回一个特殊值,如-1,以表示文件结束。这个特殊的值是"伪EOF"。

该字符不在文件中。

当文件中没有更多的字符时,函数返回它。