1. 程式人生 > >利用C語言標準庫生成一個真隨機數的方法

利用C語言標準庫生成一個真隨機數的方法

        首先需要明確一點的是,計算機系統中生成一個隨機數,需要依賴一個隨機量,這個隨機量稱為隨機數種子。否則生成的就是偽隨機數。隨機數種子的值越多樣化,生成的數就越隨機。通常,隨機數種子從計算機系統外部引入,例如人的操作、ADC採集到的值等。

        C語言的標準庫,提供了srand()和rand()兩個函式用於產生隨機數。下面的例程提供了生成一個指定範圍的隨機數的方法:

#include <stdlib.h>

uint32_t get_random(uint32_t random_seed, uint32_t min, uint32_t max)
{
    uint32_t value;
    
    srand(random_seed);
    value =  rand() % (max + 1 - min)+ min;

    return value;
}