日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

oc 中随机数的用法(arc4random() 、random()、CCRANDOM_0_1()

發(fā)布時間:2025/5/22 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oc 中随机数的用法(arc4random() 、random()、CCRANDOM_0_1() 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

oc 中隨機數(shù)的用法(arc4random() 、random()、CCRANDOM_0_1()

1)、arc4random() 比較精確不需要生成隨即種子

?????? 使用方法 :

???????????????? 通過arc4random() 獲取0到x-1之間的整數(shù)的代碼如下:

???????????????? int?value?=?arc4random()?%?x;?


???????????????? 獲取1到x之間的整數(shù)的代碼如下:

??????????????? ?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() 需要初始化時設(shè)置種子

????? 使用方法:

??????????????? srandom((unsigned int)time(time_t *)NULL); //初始化時,設(shè)置下種子就好了。

rand()實際并不是一個真正的偽隨機數(shù)發(fā)生器,random()會相對好點,但也不算理想。幸運的是iPhone上還有其他的選擇。個人來說我首選arc4random() ,原因就是它是一個真正的偽隨機算法,而且范圍是rand()的兩倍。

?

-(float)randomFloatBetween:(float)num1 andLargerFloat:(float)num2

{

? ? int startVal = num1*10000;

? ? int endVal = num2*10000;?

?

? ? int randomValue = startVal +(arc4random()%(endVal - startVal));

? ? float a = randomValue;

?

? ? return(a /10000.0);

}

?在一些產(chǎn)品的源代碼中,經(jīng)常會發(fā)現(xiàn)有這樣的語句,

srand(unsigned(time(NULL)));

為什么要這樣做呢,其實很簡單。

1.? time()函數(shù)表示返回1970-1-1 00:00:00 到當(dāng)前時間的秒數(shù),而time(NULL)表示獲取一個時間,準(zhǔn)確的說,獲取一個指針的地址。

2.? srand()函數(shù)是產(chǎn)生隨機數(shù)種子的。在產(chǎn)生隨機數(shù) rand()被調(diào)用的時候,他會查看:如果用戶之前調(diào)用過 srand(seed)的話,他會重新調(diào)用一遍 srand(seed)以產(chǎn)生隨機數(shù)種子;如果發(fā)現(xiàn)沒有調(diào)用過 srand(seed)的話,會自動調(diào)用 srand(1)一次。所以,如果希望rand()每次調(diào)用產(chǎn)生的值都不一樣,就需要每次調(diào)用srand(seed)一次,而且seed不能相同。

綜合上述兩點,那就很明了了。

srand(unsigned(time(NULL)))表示產(chǎn)生隨機數(shù)種子以保證rand()調(diào)用的時候不會出現(xiàn)重復(fù)的隨機值

轉(zhuǎn)載于:https://www.cnblogs.com/chenhaosuibi/p/3456554.html

總結(jié)

以上是生活随笔為你收集整理的oc 中随机数的用法(arc4random() 、random()、CCRANDOM_0_1()的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。