树 子函数的返回值
typedef struct{ //赫夫曼树的结构体
char ch;
int weight; //权值
int parent,lchild,rchild;
} HTNode,*HuffmanTree;
HuffmanTree HT; //全局变量
如果我要在子函数Init(HT) 中返回HT,子函数写为HuffmanTree Init(HT)为什么不行?
报错:
1>lab55.cpp(13): error C2448: “Init”: 函数样式初始值设定项类似函数定义
[解决办法]
HuffmanTree Init(HT) 这样写,编译器以为是用HT初始化INIT,即
HuffmanTree Init=HT
函数声明应该这样写:
HuffmanTree Init(HuffmanTree);
[解决办法]
你这个好乱,给你说几种方法,一种是在里面调用malloc分配一个函数应该这么声明HuffmanTree init(){
... HuffmanTree head= (HuffmanTree)malloc(...); return head;}
另外一种就是直接使用变量,可以这么写void init(HuffmanTree *head)这边记得要加指针,也就是你要修改指向这个指针的指针所指向的值~~