drand48_r

NAME

drand48_r, erand48_r, lrand48_r, nrand48_r, mrand48_r, jrand48_r, srand48_r, seed48_r, lcong48_r - generate uniformly distributed pseudo-random numbers reentrantly

SYNOPSIS

#include <stdlib.h>
 I int drand48_r(struct drand48_data * buffer , double * result );
 I int erand48_r(unsigned short  xsubi [3] ,

I struct drand48_data *buffer , double * result ); I int lrand48_r(struct drand48_data * buffer , long int * result ); I int nrand48_r(unsigned short int xsubi[3] ,
I struct drand48_data *buffer , long int * result ); I int mrand48_r(struct drand48_data * buffer ,long int * result ); I int jrand48_r(unsigned short int xsubi[3] ,
I struct drand48_data * buffer , long int * result ); I int srand48_r(long int seedval , struct drand48_data * buffer ); I int seed48_r(unsigned short int seed16v[3] ,
I struct drand48_data * buffer ); I int lcong48_r(unsigned short int param[7] ,
I struct drand48_data * buffer );

DESCRIPTION

These functions are the reentrant analogs of the functions described in drand48(3). Instead of modifying the global random generator state, they use the supplied data R buffer . Before the first use, this struct must be initialized, for example, by filling it with zeroes, or by calling one of the functions R srand48_r (), R seed48_r (), or R lcong48_r ().

RETURN VALUE

The return value is 0.

CONFORMING TO

These functions are GNU extensions and are not portable.

SEE ALSO

drand48(3), rand(3), random(3)