C语言里面有一行真看不懂了,求教各位srand((unsigned)time(NULL))拜托明白些

[复制链接]
查看11 | 回复3 | 2013-8-3 23:23:25 | 显示全部楼层 |阅读模式
先从rand()函数将起吧,可能比较好理解函数rand()是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。srand()括号里面的值,我们称之为种子。系统会根据种子的值放入一套系统算法内 来 生成一组随机数,如果种子的值相同。比如srand(1),系统将1放入系统算法内,产生一组固定的随机数。那么使用rand()时,rand()取到的值从这组固定的随机数中的第一个开始往后去,调用rand()几次,就取前n个。如下图:而如果用户在rand()前没有调用过srand(),那么系统默认...
回复

使用道具 举报

千问 | 2013-8-3 23:23:25 | 显示全部楼层
(unsigned)time(NULL) 产生一个值,srand把此值作为种子,生成随机数...
回复

使用道具 举报

千问 | 2013-8-3 23:23:25 | 显示全部楼层
为随机函数rand();种种子,要不然连续循环调用rand函数产生的随机数都是一样的。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行