博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《c专家编程》笔记--define和typedef的区别
阅读量:6669 次
发布时间:2019-06-25

本文共 585 字,大约阅读时间需要 1 分钟。

#include 
#define peach inttypedef int banana;int main(void){ unsigned peach a; unsigned banana b; return 0;}

 

上面的代码中,

 

unsigned banana b;

该行编译会出现错误。

 

因为typedef是一种彻底的“封装”类型,而#define只是简单的文本替换。

再看,

 

#include 
#define peach char*typedef char* banana;int main(void){ peach a,b; banana c,d; printf("sizeof(a)=%d\n",sizeof(a)); printf("sizeof(b)=%d\n",sizeof(b)); printf("sizeof(c)=%d\n",sizeof(c)); printf("sizeof(d)=%d\n",sizeof(d)); return 0;}

运行结果为:

 

sizeof(a)=4

sizeof(b)=1
sizeof(c)=4
sizeof(d)=4

 

转载地址:http://rflxo.baihongyu.com/

你可能感兴趣的文章
Executor多线程框架使用
查看>>
nginx学习路线
查看>>
汇编入门(长文多图,流量慎入!!!)
查看>>
powershell常用
查看>>
CoreOS实践(2)—在coreos上安装Kubernetes
查看>>
java学习 第四天 数组
查看>>
TFS安装与管理
查看>>
[WorldWind学习]15.模型加载
查看>>
java发送短信
查看>>
c#学习笔记02——接口
查看>>
Html.Encode
查看>>
P4491 [HAOI2018] 染色
查看>>
HDOJ_ACM_Piggy-Bank
查看>>
【ZJOI2012】灾难
查看>>
如何通过使用Xmanager的图形化界面修改系统
查看>>
数据库MongoDB查询语句--持续更新
查看>>
ios 应用内支付(In-App Purchase,沙盒测试,后台验证)iap
查看>>
noi 1996 登山
查看>>
Host '192.168.1.21' is not allowed to connect to this MySQL server
查看>>
【前端攻略】:玩转图片Base64编码
查看>>