(o゚▽゚)o 欢迎

不积跬步无以至千里,愿与君共勉!

一定要知道的 typedef 和 #define 的区别 精简
例如:
typedef char * String_t;
#define String_d char *

  • typedef char *String_t 定义了一个新的类型别名,有类型检查
  • #define String_d char * 只是做了个简单的替换,无类型检查
  • 前者在编译的时候处理,后者在预编译(预处理)的时候处理
  • 同时定义多个变量的时候有区别,主要区别在于这种使用方式
String_t a,b;
String_d c,d;

a,b ,c 都是char*类型,而d 为char 类型

一般都遵循#define定义“可读”的常量以及一些宏语句的任务,而typedef则常用来定义关键字、冗长的类型的别名。(推荐typedef)
阅读更多
版权声明:不积跬步无以至千里,愿与君共勉! https://blog.csdn.net/Crazy_Tengt/article/details/79229627
文章标签: typedef #define
个人分类: C++ 常见面试问题
想对作者说点什么? 我来说一句

typedefdefine区别

2010年09月02日 19KB 下载

#define VS typedef

2011年04月15日 32KB 下载

没有更多推荐了,返回首页

不良信息举报

一定要知道的 typedef 和 #define 的区别 精简

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭