鱼C论坛

 找回密码
 立即注册
查看: 3052|回复: 3

二叉树的结构 视频42集中函数定义中没有数组,为什么可以定义函数+数组的形式

 关闭 [复制链接]
发表于 2014-11-18 14:28:24 | 显示全部楼层 |阅读模式
20鱼币
本帖最后由 漠水 于 2014-11-18 16:45 编辑

在小甲鱼老师视频42集树的存储结构2处出现的数据类型有点不懂
其中CTBox nodes[MAX_TREE_SIZE]函数中CTBox本身就是一个函数,但是它没有包含数组,为什么可以定义函数+数组的形式表示?
  1. #define MAX_TREE_SIZE 100

  2. typedef char ElemType;

  3. // 孩子结点
  4. typedef struct CTNode
  5. {
  6. int child; // 孩子结点的下标
  7. struct CTNode *next; // 指向下一个孩子结点的指针
  8. } *ChildPtr;

  9. // 表头结构
  10. typedef struct
  11. {
  12. ElemType data; // 存放在树中的结点的数据
  13. int parent; // 存放双亲的下标
  14. ChildPtr firstchild; // 指向第一个孩子的指针
  15. } CTBox;

  16. // 树结构
  17. typedef struct
  18. {
  19. CTBox nodes[MAX_TREE_SIZE]; // 结点数组
  20. int r, n;
  21. }
复制代码



最佳答案

查看完整内容

首先,CTBox是一个结构体, typedef struct { ElemType data; // 存放在树中的结点的数据 int parent; // 存放双亲的下标 ChildPtr firstchild; // 指向第一个孩子的指针 }CTBox; 他就像一种自定义的数据类型。只不过这个数据类型包含 ElemType data; // 存放在树中的结点的数据 int parent; // 存放双亲的下标 ChildPtr firstchild; // 指向第一个孩子的指针 这三个“元素”。 所以 CTBox nodes[MAX_TREE_SIZE]; 这 ...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-11-18 14:28:25 | 显示全部楼层
首先,CTBox是一个结构体,
typedef struct
{
ElemType data; // 存放在树中的结点的数据
int parent; // 存放双亲的下标
ChildPtr firstchild; // 指向第一个孩子的指针
}CTBox;
他就像一种自定义的数据类型。只不过这个数据类型包含
ElemType data; // 存放在树中的结点的数据
int parent; // 存放双亲的下标
ChildPtr firstchild; // 指向第一个孩子的指针
这三个“元素”。
所以
CTBox nodes[MAX_TREE_SIZE]; 这样定义是说nodes是这个类型的数组。
个人见解。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-11-19 10:19:38 | 显示全部楼层
我还真不知道可以这样,谢谢了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-11-21 22:53:31 | 显示全部楼层
鱼币好少,东东好贵,怎么办?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-13 14:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表