C语言中:srand((unsigned)time(&t));是什么意思

如题所述

第1个回答  2006-12-31
time_t t;
srand((unsigned) time(&t));

srand函数是随机数发生器的初始化函数,原型:
void srand(unsigned seed);
它需要提供一个种子,如:
srand(1);
直接使用1来初始化种子。不过常常使用系统时间来初始化,即使用
time函数来获得系统时间,它的返回值为从 00:00:00 GMT, January 1, 1970
到现在所持续的秒数,然后将time_t型数据转化为(unsigned)型在传给srand函数,即:
srand((unsigned) time(&t));

还有一个经常用法,不需要定义time_t型t变量,即:
srand((unsigned) time(NULL));
直接传入一个空指针,因为你的程序中往往并不需要经过参数获得的t数据。本回答被提问者采纳

C语言中:srand((unsigned)time(&t));是什么意思
time_t t;srand((unsigned) time(&t));srand函数是随机数发生器的初始化函数,原型:void srand(unsigned seed);它需要提供一个种子,如:srand(1);直接使用1来初始化种子。不过常常使用系统时间来初始化,即使用 time函数来获得系统时间,它的返回值为从 00:00:00 GMT, January 1, 1970 到现在...

srand((unsigned) time(&t));
srand是用来设置随机时间的种子,一般与rand()结合使用。否则直接用rand()的话,每次运行程序的结果都相同。原型:int srand (unsigned int seed);srand((unsigned) time(&t));此句的参数使用time()函数获得系统时间作为种子,并且把获得的时间强制转换为unsigned。

srand((int)getpid());srand((unsigned) time(&t));
srand((unsigned int)getpid()); \/\/以getpid()为随机序列的种子,即将系统返回的进程ID作为随机序列的种子 srand((unsigned) time(&t)); \/\/以系统时间做种子 即产生随机序列的种子的方法是不同的,但是都产生相同的效果,即每次产生的随机数列是不一样的。

C语言中srand((unsigned)time(&t))与srand(time(&t))有什么区别?
(unsigned) 是 强制类型转换转换,区别很小:第一个区别(本质):转换成无符号的之后,这个变量类型的最高位(原本是符号位,1表示负值,0表示正值)也当做数值位,也就是说,这个变量(time返回的数值)的可容纳的大小 变大了。还有一个区别(这是主要的):(我没看srand的原型)要是srand的原...

请教几个c语言函数(srand(),rand(),time())
srand((unsigned) time(&t));这个就是利用系统时间产生一个随机数的,因为如果不用系统时间作参数,产生的随机数是伪随机数,他会在一定程度上循环 我们可以利用它求一些概率,比如说可以计算π的近似值等等 函数原型不需要我们知道的,都是系统些好的,会调用就好 ...

srand(unsigned(time(NULL)));代表什么
以系统时间为种子产生一个随机数

srand( (unsigned)time( NULL ) );怎么用这个东西
这是固定的用法,在调用rand随机数函数前写上这句就行了。这就是设定一个随机数发生器的种子。否则每次生成的随机数都是相同的。

C++生成随机数中srand((unsigned)time(NULL));是什么意思?作用是什么...
初始化随机函数种子,srand((unsigned)time(NULL));是拿系统时间作为种子,由于时间是变化的,种子变化,可以产生不相同的随机数。使用时,参数可以是unsigned型的任意数据,比如srand(10);如果不使用srand 用rand()产生的随机数,在多次运行,结果是一样的。

C语言中srand((unsigned)time(&t))与srand(time(&t))有什么区别?
srand(time(&t))用当前时间作参数,计算随机数种子。前者 多加了一个 (unsigned)强制转换,即(unsigned int)强制转换。功能上没有区别。其实没有必要。直接写 srand(time(NULL));更简洁,功能效果一样。除非你想用 t 存放当前时间。

C语言srand((unsigned)time(NULL)); 是什么意
C语言中的`srand((unsigned)time(NULL))`是一个用于初始化随机数发生器的关键语句。这个函数的主要作用是为随机数生成器提供一个初始的种子值,以确保每次程序运行时生成的随机数序列不同。`time(NULL)`函数会获取当前系统的时间,以秒为单位,作为种子,通过类型转换为unsigned类型后再传递给`srand`。...

相似回答