为了账号安全,请及时绑定邮箱和手机立即绑定

初学数据结构遇到有一个疑问

初学数据结构遇到有一个疑问

教材中有typedef struct node{                          ... } node;请问就功能而言和以下有区别吗?typedef struct{            ... /*相同内容*/ }  node;
查看完整描述

2 回答

?
慕容708150

TA贡献1831条经验 获得超4个赞

有区别,在结构体中如果存在struct node类型的成员,那么第二种会报错

查看完整回答
反对 回复 2018-10-29
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

简单点来说,一般我们取不同的名字,比如

typedef struct node_t {  // 具体内容} Node;

定义变量时,如果用node_t需要这样写:

struct node_t node;

如果用Node的话,可以这么简化来写:

Node node;

如果写成省略掉node_t,就不能用第一种写法了。

typedef struct {
  // 具体内容} Node;

一般node_t都是用来定义链表结构体的

typedef struct node_t {  // 具体内容
  struct node_t *next;
} Node;

其实,这只是structtypedef结合的用法,可以拆分为:

struct node_t {  // 具体内容};typedef struct node_t Node;


查看完整回答
反对 回复 2018-10-29
  • 2 回答
  • 0 关注
  • 801 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信