struct和typedef使用的辨析
来源:互联网 发布:php项目源代码下载 编辑:程序博客网 时间:2024/06/06 13:17
首先理一下对于学习数据结构很重要的基础知识。
比如,绝对理解下面的定义方式:
typedef struct LNode{ ElemType data; struct LNode *next;} LNode, *LinkList;
如果不理解,那你应该看看下面的:
struct LNode{ ElemType data; struct LNode *next;};typedef struct LNode LNode;typedef struct LNode *LinkList;
上面两种定义方式等价,第一种是实际中用到的,如果还不理解,那应该看看下面:
用typedef声明新类型名 有以下两种情况: 1、简单的用一个新的类型名代替原有的类型名 2、命名一个简单的类型名代替复杂的类型表示方法
结构体的用法:
不指定类型名而直接定义结构体类型变量
其一般形式为
struct{ 成员表列;}变量名表列;
指定了一个无名的结构体类型,它没有名字(不出现结构体名)。显然不能再以此结构体类型去定义其他变量。
到这里应该很明白,我试图解释的是结构体和typedef的用法。
命名一个新的类型名代表结构体类型:
typedef struct{ int month; int day; int year;}Date;
以上声明了一个新类型名Date,代表上面的一个结构体类型。然后可以用新的类型名Date去定义变量,如:
Date birthday; //定义结构体类型变量birthday,不要写成struct Date birthdayDate * p; //定义结构体指针变量 p,指向此结构体类型数据
问:上面的和
struct{ int m; int d; int y;}Date;
一样么?
分析:前者的Date,按下文的说法,是一个结构体类型名;而后者显然是一个结构体变量名,它就相当于下面的birthday。这就是区别所在。
0 0
- struct和typedef使用的辨析
- struct和typedef struct的使用区别
- struct和typedef struct使用
- typedef和typedef struct的区别
- typedef struct和struct的区别
- typedef struct和struct的区别
- struct和typedef struct的用法
- struct和typedef struct的区别
- struct和typedef struct的比较
- struct和typedef struct的区别
- typedef struct和struct的区别
- struct和typedef struct的区别
- typedef struct 和 struct 的区别
- struct和typedef struct的区别
- struct和typedef struct的区别
- struct和typedef struct的区别
- 【VC】typedef struct 和 struct 的区别
- struct和typedef struct的用法解析
- POJ 3258River Hopscotch(二分计算)
- 小米鼠标悬停浮动模块
- spark高级数据分析第二章
- C/C++程序算法小练习--大整数加法
- JAVA设计模式(开篇)
- struct和typedef使用的辨析
- div中元素的居中问题
- [ATPG] 芯片设计相关的名词简写
- Crm项目中的环境搭建和一些细节问题
- css学习之二表格
- 高并发高负载网站的系统架构建议
- Java 数组综述
- 内存溢出oom和内存泄露
- 常用的三种修改mysql最大连接数的方法