OpenBSD manual page server

Manual Page Search Parameters

RAND(3) Library Functions Manual RAND(3)

rand, srand
bad 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).

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

The rand_r() 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.
January 21, 2014 OpenBSD-5.5