我的摘要: 1、iphone有几个内嵌的随机数发生器,如rand()、random()、arc4random() 其精确程度为 arc4random() 可以由其原型进行推断 int rand(); long random(); u_int32_t arc4random(); 2、rand()和random()在使用之前需要先初始化随机种子,即调用
arc4random()不需要生成随机种子,因为第一次调用的时候就会自动生成。 3、在iPhone中,RAND_MAX是0x7fffffff (2147483647),而arc4random()返回的最大值则是 0x100000000 (4294967296),从而有更好的精度。 4、几个调用arc4random()的示例: 1)、通过arc4random() 获取0到x之间的整数的代码如下:
2)、获取1到x之间的整数的代码如下:
其中,根据预算优先级括号实际是不需要的,但还是应该对括号格外小心。 3)、如果想生成一个浮点数,可以在项目中定义如下宏:
然后就可以使用arc4random() 来获取0到100之间浮点数了(精度是rand()的两倍),代码如下:
|
|