蒲公英花开 发表于 2014-3-13 08:45:21

求解答 关于#include <ctime>

随机产生10个两位数为什么要用#include<ctime>   还有    srand(int(time(0)));是什么意思???

超级忍者龟 发表于 2014-3-13 09:13:30

头文件包含时间函数,从系统时钟里面取时间值,目的是作为随机数产生的种子,因为每次的种子基本可以不一样,这样通过随机算法出来的随机数就不同,这种方式在小范围内产生随机数还是可行的,建议如果想要获得更随机的数据,可以利用内核的熵池!

蒲公英花开 发表于 2014-3-13 09:16:36

超级忍者龟 发表于 2014-3-13 09:13 static/image/common/back.gif
头文件包含时间函数,从系统时钟里面取时间值,目的是作为随机数产生的种子,因为每次的种子基本可以不一样 ...

利用内核的熵池???具体怎么写   

沧海.sea 发表于 2014-3-13 09:34:29

CTIME   用大腿想想就知道是封装时间的类库,时间不会重复,产生随机数最合适不过了

超级忍者龟 发表于 2014-3-13 10:07:38

蒲公英花开 发表于 2014-3-13 09:16 static/image/common/back.gif
利用内核的熵池???具体怎么写

用Linux模块方式取池中随机值,因为是内核里面的,必须以模块形式运行在ring0级:
函数是get_random_bytes(&rand_num, sizeof(unsigned int));
头文件:
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>

蒲公英花开 发表于 2014-3-13 12:13:54

好吧   现在只是在windows下用VC6的环境写程序没用linux
页: [1]
查看完整版本: 求解答 关于#include <ctime>