eTree函数可以是由返回值,也可以不具有返回值(因为传递的是地址)。在main函数中作了测试,返回的值为二叉树根节点的值。
?
void CreateTree(Node** pTree)?
{
? ? char ch;
? ? scanf("%c",&ch);
? ? if(chr == '#') {
? ? ? ? (*pTree) = NULL;
? ? } else {
? ? ? ? if(!((*pTree) = (Node*)malloc(sizeof(Node)))) {
? ? ? ? ? ? exit(OVERFLOW);
? ? ? ? }
? ? ? ? (*pTree)->ch = chr;
? ? CreateTree(&((*pTree)->lchild));
? ? CreateTree(&((*pTree)->rchild));
? ? }
}