typedef int datatype;
typedef struct node
{
datatype data;
struct node *lchild,*rchild;
}bitree;
typedef,故名思意,在 C 语言中是用来定义类型的。
typedef int datatype; 则表示 datatype 是 int 类型;
typedef struct node则表示 bitree 是 node 类型。
再看 node:
struct 用来定义一个结构,即一个复合类型。一个复合类型可以有多个基本类型(基本类型就是 short、 int、long、float、double、char 这些)和复合类型组成。这里的 node 就是一个复合类型,它有一个 data(datatype 类型,即 int ),它还有 lchild 和 rchild,这两个是指针,就是 node 类型的指针,说明 lchild 和 rchild 指向的应该和 node 是同一个类型。