objective-c中生成随机数的方法
本文简述objective-c中生成随机数的几种常见的方法,分享给大家,希望能给大家带来一点借鉴价值。具体如下:
1)、arc4random()方法:比较精确不需要生成随即种子
使用方法如下 :
通过arc4random() 获取0到x-1之间的整数的代码如下:
int value = arc4random() % x;
获取1到x之间的整数的代码如下:
int value = (arc4random() % x) + 1;
2)、CCRANDOM_0_1()方法:在cocos2d中使用 ,范围是[0,1]
使用方法如下:
float random = CCRANDOM_0_1() * 5; //[0,5] CCRANDOM_0_1() 取值范围是[0,1]
3)、random()方法: 需要初始化时设置种子
使用方法如下:
srandom((unsigned int)time(time_t *)NULL); //初始化时,设置下种子就好了。
文中的代码都备有较为详细的注释,相信不难理解。感兴趣的朋友可以自己动手测试一下。
相关推荐
-
在Swift中使用Objective-C编写类、继承Objective-C类
互用性(互操作性)使开发者可以定义融合了 Objective-C 语言特性的Swift类.编写 Swift 类时,不仅可以继承 Objective-C 语言编写的父类,采用 Objective-C 的协议,还可以利用 Objective-C 的一些其它功能.这意味着,开发者可以基于 Objective-C 中已有的熟悉.可靠的类.方法和框架来创建 Swift 类,并结合 Swift 提供的现代化和更有效的语言特点对其进行优化. 继承Objective-C的类 在 Swift 中,开发者可以定义一
-
在一个项目中同时使用Swift和Objective-C代码混合编程的方法
Swift 与 Objective-C 的兼容能力使你可以在同一个工程中同时使用两种语言.你可以用这种叫做 mix and match 的特性来开发基于混合语言的应用,可以用 Swfit 的最新特性实现应用的一部分功能,并无缝地并入已有的 Objective-C 的代码中. Mix and Match 概述 Objective-C 和 Swift 文件可以在一个工程中并存,不管这个工程原本是基于 Objective-C 还是 Swift.你可以直接往现有工程中简单地添加另一种语言的源文件.这种自
-
Objective-C中NSArray的基本用法示例
NSArray的排序 复制代码 代码如下: + (id)studentWithFirstName:(NSString *)firstName lastName:(NSString *)lastName{ Student *stu = [[Student alloc] init]; stu.firstName = firstName; stu.lastName = lastName; return stu; } +
-
使用Objective-C获取IPHONE手机IMSI序列号
获取IPhone 的IMSI序列号 #include <dlfcn.h> #define PRIVATE_PATH "/System/Library/PrivateFrameworks/CoreTelephony.framework/CoreTelephony" - void getImsi(){ #if !TARGET_IPHONE_SIMULATOR void *kit = dlopen(PRIVATE_PATH,RTLD_LAZY); NSString *imsi =
-
Objective-C中NSLog输出格式大全
? %@ 对象 ? %d, %i 整数 ? %u 无符整形 ? %f 浮点/双字 ? %x, %X 二进制整数 ? %o 八进制整数 ? %zu size_t ? %p 指针 ? %e 浮点/双字 (科学计算) ? %g 浮点/双字 ? %s C 字符串 ? %.*s Pascal
-
Swift调用Objective-C编写的API实例
互用性是让 Swift 和 Objective-C 相接合的一种特性,使你能够在一种语言编写的文件中使用另一种语言.当你准备开始把 Swift 融入到你的开发流程中时,你应该懂得如何利用互用性来重新定义并提高你写 Cocoa 应用的方案. 互用性很重要的一点就是允许你在写 Swift 代码时使用 Objective-C 的 API 接口.当你导入一个 Objective-C 框架后,你可以使用原生的 Swift 语法实例化它的 Class 并且与之交互. 初始化 为了使用 Swift 实例化 O
-
Objective-c代码如何移植为Swift代码 Objective-c代码转移到Swift过程介绍
迁移工作正好提供了一个重新审视现有 Objective-C 应用程序的机会,也可以通过 Swift 代码来更好的优化应用程序的体系架构,逻辑以及性能.直接的说,你将用先前学到的 mix and match 以及这两个语言间的互操作性来进行增量迁移工作.Mix-and-match 功能使得选择哪些特性和功能来用 Swift 来实现,哪些依然用 Objective-C 来实现变得简单.Swift 和 Objective-C 的互用性又使得将这些功能集成到 Objective-C 变得并不困难.通过这
-
Objective-C中的重载和重写详解
Objective-C 重载和重写 首先,Objective-C中不完全支持重载,网上很多人要么将重载和重写搞混,要么说OC不支持重载(当然按照重载严格定义说OC不支持重载也没错),事实上OC支持参数个数不同的函数重载. 问题: Objective-C和Swift中有重载吗? Swift中有重载,但Objective-C中基本不支持重载. 展开: 重载.重写和隐藏三者在编程语言中的定义 重载(overload):函数名相同,函数的参数列表不同(包括参数个数和参数类型),至于返回类型可同可不同.重
-
Swift调用Objective-C代码
最近iOS开发之新编程语言Swift在iOS开发圈内反响比较大,国内外都有很多教程或小示例. 虽然Swift这门语言仍然在不断的进化之中,而且变动还是比较大,苹果公司也不承诺目前所写代码会在将来兼容,但仍挡不住iOS开发者的热情. 为什么要使用Swift调用Objective-C代码 目前Swift语言所编写的应用才刚刚可以使用Xcode 6 GM版本提交,而Objective-C作为苹果的主开发语言存在了很多年了.目前尚无成熟的Swift库可用,所以当前编写应用可以说基本离不开调用Object
-
Swift能代替Objective-C吗?
我文章的中心是,以 Apple 目前给出的各种资料来看,这语言不会替代掉ObjC,它不是下一代的ObjC.它有很多缺点,使得它不足以做大型项目.这些缺点使得,Apple 自己都没有使用它做 Mac/iOS 的 app.我不排除明年后年它有很大改进,但至少现在还没有这端倪. 因此,如果你会ObjC,你不需要去看它. 但你如果问我这语言对普通开发者重要不重要,我说重要,可以明确告诉你这一点--它是 Apple 在 WWDC 向全世界推出的重磅语言我怎麽能说它不重要? 它降低了入门的门槛.使得大量的
-
全面解析Objective-C中的block代码块的使用
1.相关概念 在这篇笔记开始之前,我们需要对以下概念有所了解. 1.1 操作系统中的栈和堆 注:这里所说的堆和栈与数据结构中的堆和栈不是一回事. 我们先来看看一个由C/C++/OBJC编译的程序占用内存分布的结构: 栈区(stack):由系统自动分配,一般存放函数参数值.局部变量的值等.由编译器自动创建与释放.其操作方式类似于数据结构中的栈,即后进先出.先进后出的原则. 例如:在函数中申明一个局部变量int b;系统自动在栈中为b开辟空间. 堆区(heap):一般由程序员申请并指明大小,最终也由
-
Objective-C 消息传递机制详解
Objective-C语言中方法的传递有二种:①Selector ② Blocks,本文主要说一下Selector,关于Blocks会在后续总结一下. 消息传递模型(Message Passing)是Objective-C语言的核心机制.在Objective-C中,没有方法调用这种说法,只有消息传递. 在C++或Java中调用某个类的方法,在Objective-C中是给该类发送一个消息.在C++或Java里,类与类的行为方法之间的关系非常紧密,一个方法必定属于一个类,且于编译时就已经绑定在一起,
随机推荐
- 基于Vue2.0+ElementUI实现表格翻页功能
- jQuery 操作input中radio的技巧
- 理解Angular的providers给Http添加默认headers
- 使用Python下载歌词并嵌入歌曲文件中的实现代码
- python利用正则表达式搜索单词示例代码
- 详解Swift中enum枚举类型的用法
- js实现广告漂浮效果的小例子
- 基于Python3 逗号代码 和 字符图网格(详谈)
- JavaScript让IE浏览器event对象符合W3C DOM标准
- SQL Server Alert发送告警邮件少了的原因
- linux下为nginx添加jvmroute模块的方法
- 用PHP制作静态网站的模板框架
- 搜索引擎对关键词作弊判断方法揭密
- android 仿QQ动态背景、视频背景的示例代码
- Spring Data MongoDB 数据库批量操作的方法
- Python3读取Excel数据存入MySQL的方法
- 详解java nio中的select和channel
- .NET core高性能对象转换示例代码
- c#中自定义Base16编码解码的方法示例
- 解决django-xadmin列表页filter关联对象搜索问题