C语言结构体和无名结构体以及typedef struct加不加结构体名在变量定义方式中的区别

1.C语言中使用typedef关键字来定义自己习惯的数据类型名称,也就是是为现有的类型取别名。

2.struct关键字能定义各种类型的集合,称为结构,并把他们视为一个单元。

3.结构体类型及其变量的不同定义方式:

  • 一般情况---------变量的定义方式为:struct 结构体名 变量名
 - ****struct  结构体名**
{
//成员列表
}**
  • 无名结构体---------结构体变量和结构体同时定义
    (指定一个无名结构体类型,显然不能再以次结构类型去定义变量,这种方式不常用)
 - ****struct  **
{
//成员列表
}变量名;**
  • 结构体变量和结构体同时定义
 - ****struct  结构体名**
{
//成员列表
}变量名;**

此时结构体没有别名,定义变量的形式为:struct 结构体名 变量名

 - ****typedef struct  结构体名**
{
//成员列表
}**

此时结构体有别名,可以直接用别名定义变量:别名 变量名
也可以参照上一条没有别名的定义方式:struct 结构体名 变量名

 - ****typedef  struct 结构体名 **
{
//成员列表
}别名;**
  • 直接使用别名定义结构体变量:别名 变量名
 - ****typedef struct  **
{
//成员列表
}别名;**
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值