RAND(3) | Library Functions Manual | RAND(3) |
rand
, rand_r
,
srand
, sranddev
—
bad random number generator
Standard C Library (libc, -lc)
#include
<stdlib.h>
int
rand
(void);
int
rand_r
(unsigned *seed);
void
srand
(unsigned seed);
void
sranddev
(void);
The
rand
()
function computes a sequence of pseudo-random integers in the range of 0 to
RAND_MAX
(as defined by the header file
<stdlib.h>
).
The
srand
()
function sets its argument seed as the seed for a new
sequence of pseudo-random numbers to be returned by
rand
(). These sequences are repeatable by calling
srand
() with the same seed value.
If no seed value is provided, the functions are automatically seeded with a value of 1.
The
sranddev
()
function initializes a seed, using the
random(4) random number device which
returns good random numbers. However, the rand
()
function still remains unsuitable for cryptographic use.
The
rand_r
()
function provides the same functionality as rand
().
A pointer to the context value seed must be supplied
by the caller.
The rand
() and
srand
() functions conform to
ISO/IEC 9899:1990
(“ISO C90”).
The rand_r
() function is as proposed in
the POSIX.4a Draft #6 document.
May 25, 1999 | macOS 15.0 |