本文主要是介绍OC中的除法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本篇博客算是对OC基础知识的一个回顾与复习吧,内容是与除法相关的。
最近在做项目的时候要用到一个百分比,可我最后得到的百分比总是0,于是我有点怀疑人生了。
上代码看:
CGFloat x1= 100 / 1000;
CGFloat x2= (CGFloat)100 / 1000;
CGFloat x3= (CGFloat)(100 / 1000);
NSLog(@"%f", x1);
NSLog(@"%f", x2);
NSLog(@"%f", x3);
在利用上面代码输出x1/x2/x3三个变量的时候,发现输出结果分别为:
2016-10-27 13:07:54.239 圆形进度条[1003:27500] 0.000000
2016-10-27 13:07:55.333 圆形进度条[1003:27500] 0.100000
2016-10-27 13:12:20.119 圆形进度条[1003:27500] 0.000000
解释:100/1000是int类型数据相除,得到的是int类型的结果为0,CGFloat不过是将int类型的0转化为了float类型的0。 (CGFloat)100 / 1000;是利用float类型的数据100去除int类型的1000得到的是float类型。 (CGFloat)(100 / 1000);同CGFloat x1= 100 / 1000;的原理是相同的。
这篇关于OC中的除法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!