十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
代码里的srand(time(0))的意思是:用当前时间来设定rand函数所用的随机数产生演算法的种子值。其中,time(time_t *t); 是C标准库函数,如果t是空指针,直接返回当前时间。
创新互联专注于企业全网营销推广、网站重做改版、本溪网站定制设计、自适应品牌网站建设、H5高端网站建设、商城网站制作、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为本溪等各大城市提供网站开发制作服务。
srand(time(0)) 就是给这个算法一个启动种子,也就是算法的随机种子数,用1970.1至今的秒数,初始化随机数种子。Srand是种下随机种子数,你每回种下的种子不一样,用Rand得到的随机数就不一样。
srand函数就用来初始化这个发生器,参数time(0)能够生成从1970年1月1日到当前机器时间的秒数,这个数在你每次执行程序的时候都会不断增长、变化,所以用它当做种子来初始化发生器,就会生成不同的随机数了。
srand(time(0))是指产生不同的随机种子。用法:它需要提供一个种子,这个种子会对应一个随机数,如果使用相同的种子后面的rand()函数会出现一样的随机数。如: srand(1); 直接使用1来初始化种子。
1、rand()函数,一般根srand()函数一起用。它们在一起,作用是:产生一个随机数。通常格式为:srand ( (unsigned) time (NULL) );a=rand()%x; //a,x,均为整型变量,其中,x在之前应被赋值。
2、函数一:int rand(void);返回一个[0,RAND_MAX]间的随机整数。函数二:void srand(unsigned seed);参数seed是rand()的种子,用来初始化rand()的起始值。但是,要注意的是所谓的“伪随机数”指的并不是假的随机数。
3、RAND_MAX 是一个常量,它的默认值在不同的实现中会有所不同,但是值至少是 32767。C 库函数 void srand(unsigned int seed) 播种由函数 rand 使用的随机数发生器。
4、定义函数:void srand (unsigned int seed);函数说明:srand()用来设置rand()产生随机数时的随机数种子。参数seed必须是个整数,通常可以利用geypid()或time(0)的返回值来当做seed。
1、srand()函数的原型声明为:void srand (unsigned int seed);所以在调用时只需要传入一个随机数种子就可以了,不要加别的参数。例如:srand (time(NULL));也就是将当前时间作为随机数种子传入。
2、一般是你在调用函数的时候传递的是int类型的数据,但那个函数定义的参数类型不是int(比如是结构或者指针或者数组)。
3、srand((unsigned int)(time(NULL))); 设种子,放在主程序语句开始处,执行1次就可以了。其他地方的 srand() 全部去掉。