typedef和define有什么区别

来源:互联网 发布:淘宝手机测量尺码在哪 编辑:程序博客网 时间:2024/05/05 19:56

用法不同

typedef用来定义一种数据类型的别名,增强程序的可读性。define主要用来定义常量,以及书写复杂使用频繁的宏。

执行时间不同

typedef是编译过程的一部分,有类型检查的功能。define是宏定义,是预编译的部分,其发生在编译之前,只是简单的进行字符串的替换,不进行类型的检查。

作用域不同

typedef有作用域限定。define不受作用域约束,只要是在define声明后的引用都是正确的。

对指针的操作不同

typedef和define定义的指针时有很大的区别。

注意

typedef定义是语句,因为句尾要加上分号。而define不是语句,千万不能在句尾加分号。

0 0