2012-06-03 3 views
7

Как узнать минимальные требования к ОС для использования arc4random_uniform()? Это определено в BSD? Если да, то из какой версии? Выполняется ли она на любой версии Mac OS X? Как насчет версий iOS? Есть ли какое-нибудь официальное место, где я могу найти эти вещи?Требования к ОС для arc4random_uniform()

+0

Прочитав соответствующую библиотеку C на соответствующей платформе, я не знаю о «сравнительной матрице совместимости». Иногда документация будет указывать «с» или «соответствует». –

+0

@pst, вы имеете в виду, что я должен проверить все возможные платформы со всеми возможными версиями, чтобы узнать, могу ли я найти для него справочную страницу? – rid

+0

По крайней мере, платформа (ы), представляющая непосредственный интерес, да. –

ответ

6

Если посмотреть на stdlib.h, где она определена, она говорит:

u_int32_t arc4random_uniform(u_int32_t /*upper_bound*/) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3); 

Так он доступен из Lion на настольные ПК и прошивку 4.3 на iPhone.

+1

Ох, очень умно. * Трясти кулаком по документации *. +1 здесь. –

+0

@qegal Я ошибся :(ARC4 является частью BSB с 1997 года. [Arc4random_uniform только недавно «была выставлена»] (http://lists.freedesktop.org/archives/libbsd/2011-June/000038.html). Я сделал неправильное предположение о том, что даты вручную были обновлены при последнем изменении. Итак, пока он [возможно] * был *, он недавно был * выставлен * –

+0

Я использовал это в многоплатформенной среде и столкнулся с проблемой сейчас, когда она просто не работа/существует для Android. Нечего делать? – Jonny