首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

random()函数的运用介绍

2012-08-29 
random()函数的使用介绍原文地址:random()函数的使用介绍http://www.aisidachina.com/forum/viewthread.ph

random()函数的使用介绍
原文地址:random()函数的使用介绍
http://www.aisidachina.com/forum/viewthread.php?tid=43
1、首先要让大家知道的是,random()在程序中调用是按时间来进行排序的,从你开始调用random()函数起程序就按照时间进行顺序的产生随机数,每次应用程序开始,时间都会重置,故会出现每次开启应用程序,随机数虽然时随机的,但是顺序时固定的,大家应该先知道这个原理
2、如何让一个random()函数在每次开启程序时无顺序呢?小弟不才,结合OpenGL中的原理,进行了尝试。在你调用random()函数之前,首先写一个方法,该方法为:srandom(time(NULL));
该方法的意思就是让以后的随机数不再按时间进行排序,此后你如果再使用random()方法便不用担心它的顺序随机了。
例:

srandom(time(NULL));for(int i = 0; i<10; i++){     NSLog(@"%d",random());}


试一下,看看其结果,是不是不再顺序随机了。
3、说到随机数,我还有些研究,随机数不仅用random(),还可以使用rand(),同样有srand(time(NULL));但是,在不使用 srand(time(NULL))之前,rand()的第一个随机值是16807,而random()的随机值第一个随机值是1804289383;这就是说程序默认的随机数调用的是srand(1)或者srandom(1);你如果设置一下为srand(2),它第一个随机数便不再是16807,而是 33614,设为srand(3),则第一个随机数便是50421。这只是srand(..)的情况,如果是srandom(..),则无规律可谈。

热点排行