C语言 - typedef关键字
2016-01-18 21:38
288 查看
一. typedef概念
typedef可以给已知的数据类型起别名.
1. typedef不仅能给系统原有的数据类型起别名,也可以给一个自定义的数据类型起别名
2. 利用typedef给数据类型起别名,并不会生成一个新的数据类型,仅仅是给原有的类型起了一个别名而已
二. typedef和#define的区别
用宏定义表示数据类型和用typedef定义数据说明符的区别。
宏定义只是简单的字符串替换,是在预处理完成的
typedef是在编译时处理的,它不是作简单的代换,而是对类型说明符重新命名。被命名的标识符具有类型定义说明的功能
三typedef定义格式示例
格式:
typedef 原有数据类型 别名;
示例1 : 基本数据类型
示例2 : 数组类型
示例3 : 结构体类型
示例4 : 枚举//与示例3类似
示例5 : 指针型函数
typedef可以给已知的数据类型起别名.
1. typedef不仅能给系统原有的数据类型起别名,也可以给一个自定义的数据类型起别名
2. 利用typedef给数据类型起别名,并不会生成一个新的数据类型,仅仅是给原有的类型起了一个别名而已
二. typedef和#define的区别
用宏定义表示数据类型和用typedef定义数据说明符的区别。
宏定义只是简单的字符串替换,是在预处理完成的
typedef是在编译时处理的,它不是作简单的代换,而是对类型说明符重新命名。被命名的标识符具有类型定义说明的功能
三typedef定义格式示例
格式:
typedef 原有数据类型 别名;
示例1 : 基本数据类型
typedef int BigL; //BigL等价于int typedef BigL TwoBigL; //TwoBigL还是等价于int TwoBigL a;
示例2 : 数组类型
typedef char Arrary[20]; Arrary c; //等价于char c[20];
示例3 : 结构体类型
<pre name="code" class="cpp">//第一种方法 struct Person { char *name; int age; }; typedef struct Person Organize_Person; //2.第二种方法 typedef struct Animal { char *eat; int run; }Organize_Animal; //3.第三种方法 typedef struct { int fly; double weight; }bird;
示例4 : 枚举//与示例3类似
示例5 : 指针型函数
typedef int(*Function_Point)(int,int);
相关文章推荐
- 一起talk C栗子吧(第一百零六回:C语言实例--生产者与消费者问题二)
- C++中的const_interator
- C++11新特性应用--介绍几个新增的便利算法(更改容器中元素顺序的算法)
- C++11新特性应用--介绍几个新增的便利算法(更改容器中元素顺序的算法)
- 程序设计常用的C++模板库(STL)
- C语言队列
- C++术语
- 【C++】 数组
- C++ 流
- <c++>时间输出
- C语言中如何查看程序运行了多久?
- 蓝桥杯2015年省赛B组C/C++题解
- C语言简介及进制换算
- 浅谈 C++ 中的 new/delete 和 new[]/delete[]
- 线程池与cp命令的实现
- Face Alignment at 3000FPS(C++版)工程配置遇到的小问题
- C++Primer第5版学习笔记(一)
- 将两个数组中的元素有序存入到一个链表中(C语言)
- C++学习之继承篇二(隐藏篇)
- C语言 位运算