typedef的陷阱

typedef      int*     PINT; 

#define     pint   int*

const PINT p1;           // the unit where p1 pointed can be changed

const pint   p2;          // p2 can't  be changed

 

const   PINT  p1    =>   int*  const   p1;

const  pint     p2    =>   const int*    p2;

const修饰词和其他类型修饰是并列的,即它们共同来修饰一个变量对象

因为当用typedef定义了一种新的类型PINT之后,const修饰的对象就是PINT,而PINT本身是指针,于是const PINT的意思就是PINT(某种指针)的值是常量,所以最后p1就被理解为指向intconst指针。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值