C的结构定义:typedef struct与struct的区别

struct student{};struct student a;//定义结构student,再定义其变量a

而   “struct student{}a”  与上等同

而typedef struct student{}a;其中的a 只是结构体struct的一个类型别名,就是给这种数据类型起一个别的名字

typedef struct LNode {

    ElemType data;

    struct LNode *next;

}*LinkList;//类型别名

*LinkList 表示 LinkList是一个 struct LNode *的类型别名,也就是
LinkList 与 struct LNode * 是等价的,在程序中,这两个是可以互换的,作用是等同的。

typedef是类型重定义符,这里是因为C语言使用结构体时都要加上struct作为前缀,如:
struct LNode *p,*q; //定义p,q两个结构体指针
如果typedef把 struct LNode *重新定义为LinkList后,就可以这样简单地写了:
LinkList p,q; //定义两个结构体指针p,q
两者作用相同,但是后者更加清晰和容易明白,就是进行简化了

 

 

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值