std::srand
| Определено в заголовочном файле <cstdlib>
|
||
| void srand( unsigned seed ); |
||
Устанавливает начальное значение seed встроенного генератора псевдо-случайных чисел, который используется для генерации значений при вызове std::rand(). Если rand() был вызван до использования srand(), то rand() ведет себя так, как будто последовательность случайных чисел была задана путём вызова srand(1).
Потокобезопасность srand() не гарантирована и зависит от реализации.
Содержание |
[править] Параметры
| seed | - | начальное значение генератора
Оригинал: the seed value Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
[править] Возвращаемое значение
(Нет)
[править] Примечание
Вообще говоря, начальное значение генератора псевдо-случайных чисел должно быть установлено один раз перед любым вызовом rand() и в начале программы. Не следует устанавливать начальное значение повторно, в том числе если вы хотите создать новую группу псевдо-случайных чисел.
Чаще всего в роли начального значения используют time(nullptr) .
Согласно стандарту языка, time() имеет тип возвращаемого значения time_t, который не обязательно является целым числом. На практике time_t всегда принимает целый тип, поскольку этого требует стандарт POSIX.
[править] Пример
#include <cstdlib> #include <iostream> #include <ctime> int main() { std::srand(std::time(nullptr)); //Используем текущее время, как начальное значение для генератора случайных чисел int random_variable = std::rand(); std::cout << "Случайное значение на [0 " << RAND_MAX << "]: " << random_variable << '\n'; }
Возможный вывод:
Случайное значение на [0 2147483647]: 1373858591
[править] См. также
| Генерирует псевдослучайные числа (функция) | |
| C documentation for srand
|

