При поиске на man-странице rand (3) я нашел это:
Версии rand () и srand () в
библиотека Linux C использует то же самое
генератор случайных чисел как random ()
и srandom ()
поэтому я посмотрел на случайную (3) справочную страницу, и вот ваш ответ:
Период этого случайного числа
генератор очень большой, примерно
16 * ((2 ** 31) -1) * 1 011 *
Это может быть весьма полезно для педагогических целей, поскольку вы хотите разработать собственный PRNG. Тем не менее, я бы не рекомендовал использовать этот PRNG при разработке приложения. Вы должны предпочесть одну из реализаций Boost.Random в соответствии с предложением @Neil Butterworth (MT19937 - хороший PRNG по умолчанию, достаточный для большинства приложений).
Наконец, если вы намереваетесь узнать больше о PRNG, я бы посоветовал вам прочитать эти две научные статьи, в которых подробно рассматриваются PRNG.
Практическое распределение случайных потоков для стохастических высокопроизводительных вычислений , Дэвид Р. Хилл, в Международная конференция по высокопроизводительным вычислениям и моделированию (HPCS) , 2010
Генераторы псевдослучайных чисел , Пьер Л'Экуайер, в Энциклопедия количественных финансов
Энциклопедия количественных финансов , 2008