如何设置种子呢?一般就 用time函数返回当前时间即可。一般来讲,这样的做法基本上就可以了,因为虽然我们用的是随机数,但是由于种子不同,从上亿的数中去猜测我们的种子几乎 是不可能的。例如:#include #include #include #define random(x) (rand()%x) void main() { srand((int)time(0));for(int x=0;x 0) { unsigned int r;int i;for (i = 0; i 512; i++) { read (fd, r, sizeof (r));ticks += r;} close (fd);} srand (ticks);printf("init finished ");} unsigned int new_rand () { int fd;unsigned int n = 0;fd = open ("/dev/urandom", O_RDONLY);if (fd 0) { read (fd, n, sizeof (n));} close (fd);return n;} int main () { int n, i;init_random ();n = rand ();printf ("n=%d ", n);for(i=0;i
创新互联建站为您提适合企业的网站设计 让您的网站在搜索引擎具有高度排名,让您的网站具备超强的网络竞争力!结合企业自身,进行网站设计及把握,最后结合企业文化和具体宗旨等,才能创作出一份性化解决方案。从网站策划到成都网站设计、成都网站建设, 我们的网页设计师为您提供的解决方案。
linux内核自1.3.30版本以来实现了一个随机数产生器,从理论上说它能产生真正的随机数,该随机数产生器是从设备驱动收集电路上的环境噪音放入熵池,它的实现代码在drivers/char/random.c中,自己去看吧
好的,您想知道关于busybox显示random的信息吗?Busybox是一个小巧的工具集,它可以在Linux系统上提供常用的Unix命令。它的random命令可以生成一个随机数,这个随机数可以用来做很多事情,比如生成密码、生成伪随机数等。使用random命令时,可以指定生成的随机数的范围,也可以指定生成的随机数的位数。使用random命令的语法如下:random [-n] [-m] [-s seed] [max] [min]。其中,-n表示生成的随机数的位数,-m表示生成的随机数的范围,seed表示随机数的种子,max表示最大值,min表示最小值。
下面的命令将随机生成1-1000之间的100个随机数,并求和输出:
shuf -i 1-1000 -n 100|awk '{sum+=$1} END {print "Sum = ", sum}'
输出:Sum = 52997