# Random Integer
# Basic Random Integer
The arc4random_uniform()
function is the simplest way to get high-quality random integers. As per the manual:
arc4random_uniform(upper_bound) will return a uniformly distributed random number less than upper_bound. arc4random_uniform() is recommended over constructions like ''arc4random() % upper_bound'' as it avoids "modulo bias" when the upper bound is not a power of two.
uint32_t randomInteger = arc4random_uniform(5); // A random integer between 0 and 4
# Random Integer within a Range
The following code demonstrates usage of arc4random_uniform()
to generate a random integer between 3 and 12:
uint32_t randomIntegerWithinRange = arc4random_uniform(10) + 3; // A random integer between 3 and 12
This works to create a range because arc4random_uniform(10)
returns an integer between 0 and 9. Adding 3 to this random integer produces a range between 0 + 3
and 9 + 3
.