typedef和define的区别以及枚举和#define的区别
来源:互联网 发布:网络编程书籍 编辑:程序博客网 时间:2024/06/08 00:18
一、枚举与#define的区别
枚举可以使整型数据,define为任意类型的数据
1、从处理过程角度看
#define宏定义是在预编译处理阶段时处理的处理的,只做简单的字符串替换,枚举常量则是在编译的时候
确定其值
2、从数据类型看
#define可以编译任意类型的常量,而枚举只能定义整型常量
3、从代码编写角度看
枚举可以一次定义大量的常量,而#define宏一次只能定义一个
4、枚举的取值范围已经限定了,容易进行参数的检查,而#define则没有这种检查
二、typedef与define的区别
1、在执行时间上
typedef在编译时处理,有类型检查;#define在预处理阶段进行简单的字符串替换,不进行任何检查
2、功能上
typedef用来定义类型的别名,定义与平台无关的数据类型;#define不只是可以为类型取别名,还可以定义常
量、变量等
3、作用域上
#define没有作用域限制,定义过的宏在之后的程序都可以调用;typedef有自己的作用域(在定义函数内)
4、对指针操作上
typedef int*pint;
#define PINT int*
int i1 = 1;
int i2 = 2;
const pint P1 = &i1;//p不可以更改,p指向的内容可以更改
const PINT p2 = &i2;//p可以更改,p指向的内容不可以更改
- typedef和define的区别以及枚举和#define的区别
- typedef和#define的用法以及区别
- typedef和#define的用法以及区别
- typedef和define的区别
- typedef 和 define的区别
- define和typedef的区别
- #define和typedef的区别
- Typedef和define的区别
- #define和typedef的区别
- Typedef和define的区别
- #define和typedef的区别
- Typedef和#define的区别
- typedef 和 define的区别
- typedef和#define的区别
- define和typedef的区别
- typedef和#define的区别
- typedef和define的区别
- typedef和#define的区别
- MySql——得到ResultSet的记录个数的正确方法
- 二维码工具类
- ListView 的属性介绍
- PM产品经理之书籍篇
- SQL Server SUBSTRING()函数
- typedef和define的区别以及枚举和#define的区别
- getContextPath、getServletPath、getRequestURI的区别
- xcopy’不是内部或外部命令,也不是可运行的程序或批处理文件
- android apk嵌套 从一个apk启动另外一个apk
- $(document).ready(...) 和 window.onload 区别
- 数据库连接池
- android中xml虚线不显示,或者只显示实线
- Swift基础(二十五)UIPageControl
- 视图横屏