本人坚持更新C语言,数据结构,操作系统知识,可以收藏+关注随时了解😜😜😜
目录
我们在之前学习结构体的时候,是如何定义结构体的呢?
typedef的定义
typedef的用法
方法1
方法2
方法3
我们在之前学习结构体的时候,是如何定义结构体的呢?
struct Student
{
int age;
float score;
char sex;
};//定义数据类型
struct Student stu ={10,98.5,'M'};
我们往往先是定义数据类型struct Student,然后再通过struct Student stu来定义变量
但是这样的缺点是我们每次定义变量的时候,都需要写struct Student,这样会显得代码杂乱,
这里就需要使用到typedef
typedef的定义
typedef 关键字来定义自己习惯的数据类型名称,来替代系统默认的基本类型名称、数组类型名称、指针类型名称与用户自定义的结构型名称、共用型名称、枚举型名称等。
typedef int ZHANGSAN
这句话的意思就是,将int 重新起了一个名字叫ZHANGSAN,此时int i= 5;就等价于ZHANGSAN i=5.
当然,typedef在C语言中,多和结构体在一起连用
typedef的用法
方法1:
typedef struct Student
{
int sid;
char name[100];
char sex;
} ST; //为struct Student重新起一个名字叫ST
int main(){
ST stu ={100;"bozhubenren",'M'};
return 0;
}
我们在这里为数据类型struct Student重启名字为ST,此时struct Student <=> ST
方法2:
typedef struct Student
{
int sid;
int age;
} * PSTU; // PST 等价于struct Student*
int main(){
struct Student stu;
PSTU p = &stu;
p->sid = 100;
return 0;
}
我们在这里为数据类型struct Student*重启名字为PSTU,此时struct Student* <=>PSTU
方法3:
typedef struct Student
{
int sid;
int age;
} * PSTU, STU;
int main(){
STU st;
PSTU p = &st;
p->sid = 100;
return 0;
}
我们在这里为数据类型struct Student重启名字为ST,此时struct Student <=> ST.
struct Student*重启名字为PSTU,此时struct Student* <=>PSTU
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)