趣学 C 语言(二)—— typedef 与 #define
来源:互联网 发布:android网络状态监听 编辑:程序博客网 时间:2024/05/24 07:09
#define:宏文本替换(其实 #define 宏定义十分十分简单,就是做文本替换);
typedef:彻底的封装类型;
(1) 可用其他类型说明符对宏类型名进行拓展,但对 typedef 所定义的类型名却不能这么做
#define peach intunsigend peach i; // 没问题typedef int banach;unsigned banach i; // 错误!非法
(2) 在连续几个变量的声明中,用 typedef 定义的类型能够保证声明中所有的变量均为同一种类型,而用 #define 定义的类型却无法保证
#define int_ptr int *int_ptr chalk, cheese; // int *chalk, cheese;typedef char * char_ptr;char_ptr c1, c2;
1. 对 typedef 使用的认识
struct A;typedef struct A* B;
在命名上 A:考虑的是其底层数据结构,B:考虑的则是其使用上的意义。
比如优先队列一般通过二叉堆实现。
struct BinHeap;typedef struct BinHeap* PriorityQueue;
在实现对 HashTable 的类型声明时:
struct ListNode;typedef struct ListNode* Position;typedef Position List;struct HashTbl;typedef struct HashTbl* HashTable;
0 0
- 趣学 C 语言(二)—— typedef 与 #define
- 深入学习C语言系列(二): #define与typedef
- 深入学习C语言系列(二): #define与typedef
- c语言typedef 与 #define
- C语言中的typedef(包含与#define的区别)
- C语言之define与typedef区别
- C语言define 与typedef区别
- C——#define和typedef的用法与区别
- C语言 define和typedef
- C语言 typedef 和 #define
- 【C语言】语法-typedef用法及与define的区别
- C语言中typedef与#define的作用域
- C语言中typedef与#define宏的区别
- C语言中#define与typedef的互换细节详解
- C typedef与#define区别
- 【C语言复习(三)】enum、typedef 和#define的分析与区别
- C/CPP点滴积累—#define ,typedef
- 黑马程序员——C语言基础--关于typedef和define的重要区别记录以及typedef的经典例子
- 【C语言】打印26字母金字塔
- JFrame中的setDfaultCloseOperation的含义
- location.hash详解
- js操作关闭子页面刷新父页面
- POJ 2081 Recaman's Sequence
- 趣学 C 语言(二)—— typedef 与 #define
- 网络编程之TCP/UDP及其流程比较
- Android性能优化之Java代码优化
- Codeforces 643C Levels and Regions(斜率优化dp)
- google官方架构MVP解析与实战-(从零开始搭建android框架系列(3))
- 字典序最小问题
- (OK) use—install—IMUNES—commands
- VMwareWorkstation12注册机、您无权输入许可证密钥,请请使用系统管理员账户重试
- Java学习·web学习_选择器