objective-c 中随机数的用法 (rand()、arc4random() 、random()、CCRANDOM_0_1() )
来源:互联网 发布:windows安装ipython3 编辑:程序博客网 时间:2024/06/06 17:10
1、随机数的使用
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); //初始化时,设置下种子就好了。
2、
1、iphone有几个内嵌的随机数发生器,如rand()、random()、arc4random()
其精确程度为
arc4random() > random() > rand()
可以由其原型进行推断
int rand();
long random();
u_int32_t arc4random();
2、rand()和random()在使用之前需要先初始化随机种子,即调用
srandom(time(NULL));arc4random()不需要生成随机种子,因为第一次调用的时候就会自动生成。
3、在iPhone中,RAND_MAX是0x7fffffff (2147483647),而arc4random()返回的最大值则是 0x100000000 (4294967296),从而有更好的精度。
4、几个调用arc4random()的示例:
1)、通过arc4random() 获取0到x之间的整数的代码如下:
int value = arc4random() % (x+1);2)、获取1到x之间的整数的代码如下:
int value = (arc4random() % x) + 1;
其中,根据预算优先级括号实际是不需要的,但还是应该对括号格外小心。
3)、如果想生成一个浮点数,可以在项目中定义如下宏:
#define ARC4RANDOM_MAX 0x100000000然后就可以使用arc4random() 来获取0到100之间浮点数了(精度是rand()的两倍),代码如下:
double val = floorf(((double)arc4random() / ARC4RANDOM_MAX) * 100.0f); 0 0
- objective-c 中随机数的用法 (rand()、arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 arc4random() 、random()、CCRANDOM_0_1()
- Objective-C 中随机数的用法(arc4random() 、random()、CCRANDOM_0_1()
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- objective-c 中随机数的用法 (3种:arc4random() 、random()、CCRANDOM_0_1() )
- 避免Android中Context引起的内存泄露
- 创建异步的NSOperation
- 内存映射文件原理探索
- Beyond Compare软件使用教程
- tolua namespace
- objective-c 中随机数的用法 (rand()、arc4random() 、random()、CCRANDOM_0_1() )
- 明解C语言1-8
- qq第三方登录常见错误码信息对照表
- 安卓 EditText在用软键盘编辑点击删除键时程序无故闪退
- SpringMvc中ajax后台可以收到请求,前台依旧报错
- 3DS_MAX渲染笔记
- HYSBZ/BZOJ 1007 [HNOI2008] 水平可见直线 - 计算几何
- 网页性能管理详解(原作者: 阮一峰)
- 明解C语言1-9