c/c++中struct与typedef struct

本文详细解析了在C/C++中定义和使用结构体的多种方法,包括如何通过typedef为结构体创建别名,以及如何在结构体中包含指向自身的指针。文章对比了不同定义方式的特点,为读者提供了深入理解结构体的视角。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

两种定义结构体的方法区别:

typedef struct student{
	int a;
}stu1;// stu1是结构体,相当于给struct student取了一个别名 stu1,就可以用stu1去定义变量了。

以下为此结构体定义变量的两种方法:
//1. stu1 m;
// 2. struct student m;
注:在上述方法中可以去掉student;当然也就不能使用struct student去定义变量;

struct student{
	int a ;
}stu2; //  stu2是变量

注:这里的struct student{}也就相当于一个结构体类型

在c++中极其方便可以用以下方法:

struct student{
	int a;
};//可直接用student去定义结构体变量。

想在结构体中包含指向它本身的指针时,有以下3种方法:

typedef struct tagNode{
	int data;
	struct tagNode *Next;
}*LNode;
typedef struct tagNode *LNode;
struct tagNode{
	int data;
	LNode Next;
};
struct  LNode{
	int data;
	LNode *next;
};
typedef LNode *LinkList;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值