PureBasic

RandomData()

Синтаксис

RandomData(*Buffer , Length)

Описание


Заполняет указанный буфер памяти случайными данными.

Параметры

*Buffer Адрес буфера памяти, который требуется заполнить случайными данными.
Length Размер буфера памяти, который требуется заполнить.

Возвращаемое значение

Ничего.

Комментарии

Эта команда использует то же источник случайных чисел, что и команда Random(). Чтобы изменить источник случайных чисел, можно использовать команду RandomSeed().
Для рандомизации элементов Массива или Связного списка, можно использовать соответственно функции RandomizeArray() или RandomizeList().
Для того, чтобы быстро получить единственное случайное число от 0 до заданного значения, используйте функцию Random()

Примечание: Эта команда использует генератор псевдослучайных чисел, который очень быстр и создает случайный вывод, но он недостаточно силен для криптографических целей. Для этих целей используйте более медленную, но криптографически более сильную команду CryptRandomData().

Пример

; Создание изображения со случайным содержимым
;
CreateImage(0, 200, 200)
If StartDrawing(ImageOutput(0))
    *Buffer = DrawingBuffer()
    Pitch  = DrawingBufferPitch()

    RandomData(*Buffer, Pitch*200)

    StopDrawing()
EndIf

OpenWindow(0, 0, 0, 200, 200, "Random Image", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ImageGadget(0, 0, 0, 200, 200, ImageID(0))

Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow

См. также

RandomSeed(), Random(), CryptRandomData()

Поддерживаемые OS

Все

<- Random() - Оглавление Math - RandomSeed()->