iOS 中的随机数

来源:互联网 发布:扫矿软件 编辑:程序博客网 时间:2024/06/03 16:44

第一种:

Objective-C 中有个arc4random()函数用来生成随机数且不需要种子,但是这个函数生成的随机数范围比较大,需要用取模的算法对随机值进行限制,有点麻烦。

其实Objective-C有个更方便的随机数函数arc4random_uniform(x),可以用来产生0~(x-1)范围内的随机数,不需要再进行取模运算。如果要生成1~x的随机数,可以这么写:arc4random_uniform(x)+1。
第二种:

通过arc4random() 获取0到x-1之间的整数的代码如下:

int value = arc4random() % x; 

 

获取1到x之间的整数的代码如下: 

int value = (arc4random() % x) + 1; 

 

最后如果想生成一个浮点数,可以在项目中定义如下宏:

#define ARC4RANDOM_MAX      0x100000000 

 

然后就可以使用arc4random() 来获取0到100之间浮点数了(精度是rand()的两倍),代码如下:

double val = floorf(((double)arc4random() / ARC4RANDOM_MAX) * 100.0f)


1 0