OC浮点数是否需要加上f后缀

分析以下这段代码的结果就能得到答案。
CGFloat a = 5.3f;
CGFloat b = 5.3;
NSLog(@"%lu  %lu", sizeof(a), sizeof(b));
NSLog(@"%lu  %lu", sizeof(double), sizeof(float));
NSLog(@"%lu  %lu", sizeof(typeof(5.3)), sizeof(typeof(5.3f)));

以下是打印结果:
8  8
8  4
8  4

第一行结果说明对于CGFloat类型来说,加不加f都是一样的。
根据第二行结果:double是8字节,float是4字节。第三行结果说明不加f后缀的话类型为double,加f后缀的话类型为float。

结论:
1.如果是赋给CGFloat类型,则加不加f后缀都是一样的。
2.如果是赋给double或float类型,就要考虑精度的问题。不加f后缀的话类型为double,8字节,加f后缀的话类型为float,4字节。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值