Как srand относится к функции rand?
Я понимаю, что функция rand () генерирует одно и то же число при каждом запуске, если вы неизменить номер семени. Тот's, где приходит srand (). Время всегда меняется, поэтому я знаю, что вы должны передать параметр времени (null) в srand. Мой вопрос с кодом ниже с учебного сайта.
int main()
{
int i, n=5;
time_t t;
/* Intializes random number generator */
srand((unsigned) time(&t));
/* Print 5 random numbers from 0 to 50 */
for( i = 0 ; i < n ; i++ ) {
printf("%d\n", rand() % 50);
}
return(0);
}
Не вижу ссылки с сранда
((unsigned) time(&t));
и ранд.
printf("%d\n", rand() % 50);
Где связь между рандом и срандом? Что я имею в виду или ожидаю, так это то, что я предполагаю, что rand () получит некоторый параметр от srand (), поэтому он знает, что каждый раз генерирует разные числа. Я предполагаю, что это будет выглядеть примерно так: rand (srand (time (null));
Это'Это как инициализация переменной без ее использования для меня. srand инициализируется, но я нене вижу, чтобы его использовали.
Генерирует ли rand разные числа, потому что srand вызывается первым перед rand?