OpenBSD manual page server

Manual Page Search Parameters

RAND(3) Library Functions Manual RAND(3)

rand, rand_r, srandbad random number generator

#include <stdlib.h>

void
srand(unsigned int seed);

int
rand(void);

int
rand_r(unsigned int *seed);

These interfaces are obsoleted by random(3), which is also unsafe. Consider using arc4random(3).

The () 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 () 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 functions are automatically seeded with a value of 1.

The () is a thread-safe version of rand(). Storage for the seed must be provided through the seed argument, and needs to have been initialized by the caller.

arc4random(3), rand48(3), random(3)

The rand() and srand() functions conform to ANSI X3.159-1989 (“ANSI C89”).

The rand_r() function conforms to IEEE Std 1003.1-2008 (“POSIX.1”).

The functions rand() and srand() first appeared in Version 3 AT&T UNIX.

July 17, 2014 OpenBSD-5.6