使用srand和time函数的差异

时间:2014-04-10 23:28:40

标签: c++ srand

谁能解释我的差异?两种方式似乎都是一样的。

第1部分

printf("The first randomly generated number: %d\n", rand()%100); 
srand(time(NULL));
printf ("The second randomly generated number: %d\n", rand()%100); 

第2部分

printf("The first randomly generated number: %d\n", rand()%100); 
printf ("The second randomly generated number: %d\n", rand()%100); 

1 个答案:

答案 0 :(得分:0)

srand(time(NULL));用于播种随机数,但有时会导致问题。您可以将NULL替换为整数或数字,例如srand(time(1000));,因为NULL表示0. NULL=0。您放置的数字以毫秒为单位,因此1000为1秒。您需要srand(time(*something*));,否则您的程序有时无效。你可以尝试一下,如果它不起作用,我会尝试提出别的东西。希望它有所帮助!