我一直致力于我的霍夫曼项目。几乎完成了,现在我唯一需要做的就是存储在输出文件中。这是我的解码功能。
void decode(struct Node * root, int * encodeString)
{
int i;
struct Node * temp = root;
for (i = 0; encodeString[i] != -1; i++)
{
if (encodeString[i] == 1)
{
temp = temp -> right;
}
else
{
temp = temp -> left;
}
if (isLeaf(temp))
{
printf("%c", temp -> character);
temp = root;
}
}
}
调用主要功能
decode(start, encodedString);
printf("\n");
减压结果:
Fred Fish 1 2 3 4 5 6 7 8 9 10
我稍后会在main函数中调用它。当我打电话时,将打印解码后的字符串。有没有办法阅读这些字符。我没有使用fgets(),因为我不知道字符的大小。我试过scanf("%99c",行)但它不起作用,请指教