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 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
rand() function is automatically seeded with a value of 1.
The
rand_r() function is a reentrant interface to
rand(); the seed has to be supplied and is maintained by the caller.