C语言二叉树定义问题

typedefstructBTREE{intdata;structBTREE*left;structBTREE*right;}BTNode,BTree;这一段代码是什么意... typedef struct BTREE
{
int data;
struct BTREE *left;
struct BTREE *right;
}
BTNode,BTree;

这一段代码是什么意思?typedef不是定义一个字符串来表示一个类型吗?这里怎么没有?还有,最后一行是什么意思?
搞错了,应该是这样:

……
typedef struct BTREE
{
int data;
struct BTREE *left;
struct BTREE *right;
}
BTNode,*BTree;
BTree root;
BTNode stack[50];
BTNode popstack[50];
……

typedef什么意思我知道,就是为什么后面会出现两个新类型名???
展开
 我来答
assassinzyf
推荐于2016-11-17 · TA获得超过806个赞
知道答主
回答量:186
采纳率:0%
帮助的人:167万
展开全部
typedef struct BTREE
{
int data;
struct BTREE *left;
struct BTREE *right;
}
BTNode,*BTree;
---------------------------
这段是定义一个二叉树结构体BTREE~

BTree root;
---------------------------
这是二叉树的根结点~~

BTNode stack[50];
---------------------------
这是用来存储BTNode型结点的栈~~

BTNode popstack[50];
---------------------------
这是用来存储弹出栈的BTNode型结点的栈~

希望能帮上你~~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ba5f5517e8f
2009-01-28 · 超过20用户采纳过TA的回答
知道答主
回答量:88
采纳率:0%
帮助的人:0
展开全部
C语言不仅提供了丰富的数据类型,而且还允许由用户自己定义类型说明符,也就是说允许由用户为数据类型取“别名”。类型定义符typedef即可用来完成此功能。
看这个例子:
typedef struct stu

{ char name[20];

int age;

char sex;

} STU;

定义STU表示stu的结构类型,然后可用STU来说明结构变量:

STU body1,body2;

typedef定义的一般形式为:

typedef 原类型名 新类型名

其中原类型名中含有定义部分,新类型名一般用大写表示,以便于区别。
{
int data;
struct BTREE *left;
struct BTREE *right;
} 它只是BTREE的定义部分

BTNode,BTree是新类型名,整个代码未出现变量
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吞并微软
2009-01-28 · TA获得超过193个赞
知道答主
回答量:261
采纳率:0%
帮助的人:192万
展开全部
typedef struct BTREE 这一行的意思就是把BTREE定义为你下面括起来的结构体类型,最后一行的意思是 声明一个你定义的那种结构踢类型的变量BTtee;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式