nrand48()

Updated: April 19, 2023

Generate a pseudo-random nonnegative long integer in a thread-safe manner

Synopsis:

#include <stdlib.h>

long nrand48( unsigned short xsubi[3] );

Arguments:

xsubi
An array that comprises the 48 bits of the initial value that you want to use.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The nrand48() function uses a linear congruential algorithm and 48-bit integer arithmetic to generate a nonnegative long integer uniformly distributed over the interval [0, 231).

The xsubi array should contain the desired initial value; this makes nrand48() thread-safe, and lets you start a sequence of random numbers at any known value.

Returns:

A pseudo-random long integer.

Classification:

POSIX 1003.1 XSI

Safety:  
Cancellation point No
Interrupt handler No
Signal handler No
Thread Yes