Семя случайное в 64-битном

С обновлением iPhone 5S я хочу, чтобы мое приложение поддерживало новый 64-битный процессор.

Однако использование 64-битной системы может привести к усечению, если больший тип данных преобразуется в меньший, как в случае преобразования long в int. В большинстве случаев это можно легко исправить, просто используя больший тип данных, но в случае генераторов случайных чисел, которые иногда засеваются с помощью "время (NULL)» Функция я не могу этого сделать.

Текущий код прост:

srandom(time(NULL));

Но в XCode 5 с 64-битной версией возникает следующая ошибка:Implicit conversion loses integer precision: 'time_t' (aka 'long') to 'unsigned int', Это потому что "время (NULL)» возвращает длинное целое иsrandom» требует неподписанного Int. Поэтому есть два варианта:

Преобразовать длинное целое в беззнаковое целоеЗаменить "время (NULL)» с другой функцией, которая выполняет ту же работу, но возвращает беззнаковое целое.

Какую из них вы бы порекомендовали и какую функцию мне использовать для этого?

ПРИМЕЧАНИЕ: я использую random () вместо arc4random (), потому что мне также нужно иметь возможность заполнять генератор случайных чисел, чтобы получить повторяемый результат.

Ответы на вопрос(2)

Ваш ответ на вопрос