cg_Amaz1ng
2015-10-25 05:42
采纳率: 60%
浏览 1.8k
已采纳

C语言文件/哈夫曼树/算法/二叉树

 在一个函数中,下面这两行运行无错误
fp=fopen("CodeFile.dat","wb");
fwrite(HC[i],sizeof(char),strlen(HC[i])+1,fp);
//其中HC的类型是char **

//然后在另外一个函数中加入
fp=fopen("CodeFile.dat","rb");
for(int i=1;i<=n;i++)
    fread(HC[i].sizeof(char),strlen(HC[i])+1,fp);
//就不行了,老是运行到这三行就出错。!!
//补充一些
typedef char ** HuffmanCode;
HuffmanCode HC;
HC = (HuffmanCode)malloc((n+1)*sizeof(char *));
//求救
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • mtchy 2015-10-25 06:10
    已采纳

    没给HC[i]没申请动态空间

    点赞 评论
  • cg_Amaz1ng 2015-10-25 05:48

    图片说明

    点赞 评论
  • blownewbee 2015-10-25 05:50

    文件写完有没有关闭,如果没有,再次打开会报文件被占用错误。

    点赞 评论
  • cg_Amaz1ng 2015-10-25 05:52

    图片说明
    这是另外一个函数中的最后代码,两个函数用的文件指针也是不一样 的。文件有关闭。

    点赞 评论
  • Leexianke 2015-10-25 08:01

    处理文件后要关闭的啊,楼上都说了

    点赞 评论

相关推荐 更多相似问题