drand48_r - srand48_r,
drand48_r(3)
srand48_r,
ОБЗОР
#include <stdlib.h>
int drand48_r(struct drand48_data *buffer, double *result);
int erand48_r(unsigned short xsubi[3],
struct drand48_data *buffer, double *result);
int lrand48_r(struct drand48_data *buffer, long int *result);
int nrand48_r(unsigned short int xsubi[3],
struct drand48_data *buffer, long int *result);
int mrand48_r(struct drand48_data *buffer,long int *result);
int jrand48_r(unsigned short int xsubi[3],
struct drand48_data *buffer, long int *result);
int srand48_r(long int seedval, struct drand48_data *buffer);
int seed48_r(unsigned short int seed16v[3],
struct drand48_data *buffer);
int lcong48_r(unsigned short int param[7],
struct drand48_data *buffer);
Требования макроса тестирования свойств для glibc
(см. feature_test_macros(7)):
Все функции, указанные выше: _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE
ОПИСАНИЕ
Данные функции являются реентерабельными аналогами функций, описанных в
drand48(3). Вместо изменения состояния глобального генератора
произвольных чисел, в них используется передаваемый буфер данных
buffer.
Перед первым использованием эта структура должна быть инициализирована,
например, заполнена нулями или посредством вызова функции srand48_r(),
seed48_r() или lcong48_r().
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Возвращаемое значение равно 0.
АТРИБУТЫ
Описание терминов данного раздела смотрите в
attributes(7).
Интерфейс Атрибут Значение
drand48_r(),
erand48_r(),
lrand48_r(),
nrand48_r(),
mrand48_r(),
jrand48_r(),
srand48_r(),
seed48_r(),
lcong48_r()
безвредность в потоках: безвредно (MT-Safe race:buffer)
СООТВЕТСТВИЕ СТАНДАРТАМ
Эти функции являются расширениями GNU и не переносимы.