Различия в использовании функций srand и time
Кто может объяснить мне различия? В обоих случаях, кажется, действуют одинаково.
Часть 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 ответ
srand(time(NULL));
используется для заполнения случайного числа, но иногда вызывает проблемы. Вы можете заменить NULL
с целым числом или числом, например srand(time(1000));
, потому что NULL означает 0. NULL=0
, Число, которое вы вводите, указывается в миллисекундах, поэтому 1000 - это 1 секунда. Вам нужно srand(time(*something*));
или ваша программа иногда не будет работать. Вы можете попробовать, если это не сработает, я постараюсь придумать что-нибудь еще. Надеюсь, поможет!