数据类型转换不当引发的问题

问题

生成十位随机数字,在debug模式下正常,release模式下生成的数字一直为0;

问题代码如下
    NSInteger length = 10;
    double testDouble = pow(10, length);
    NSInteger randomNum = (int)testDouble;  // 问题出在这里
    NSInteger num = (arc4random() %  randomNum);
   NSString* randomStr = [NSString stringWithFormat:@"%.10ld", num];
问题产生原因

将double强制转化成int导致问题出现

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • __block和__weak修饰符的区别其实是挺明显的:1.__block不管是ARC还是MRC模式下都可以使用,...
    LZM轮回阅读 3,358评论 0 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,868评论 18 139
  • 最全的iOS面试题及答案 iOS面试小贴士 ———————————————回答好下面的足够了-----------...
    大罗Rnthking阅读 984评论 0 2
  • 三秒是最普通的那种16小姑娘,我要讲的就是她的故事
    三淼姑娘阅读 216评论 0 0
  • 多数学生在论证分析时,始终在一个层面滑行,缺乏论证层次。如何突破呢?我将从“立论”开始,介绍几种让论点升格的方法,...
    一条后知后觉的鱼阅读 657评论 0 0