c基礎(chǔ) - 如何文檔閱讀 - 隨機數(shù)示例及使用場景

前言

變量:就是給內(nèi)存地址取一個別名;

1. 如何文檔閱讀?

下邊通過舉一個示例,生成隨機數(shù)來看下

2. 隨機數(shù)代碼如下

#include<stdio.h>
#include <stdlib.h> 
#include <time.h>   // 這3個都是導(dǎo)包

// 生成隨機數(shù)
void main(){

    
    // 解決方式:初始化發(fā)生器 ,每次發(fā)生器都是當(dāng)前時間
    // time表示每次運行時,發(fā)生器都是當(dāng)前時間    
    srand((unsigned)time(NULL));

    // 生成10個 100以內(nèi)的隨機數(shù)
    // 可以隨機,但是每次運行的隨機數(shù)都一致
    int i;
    for (i = 0; i < 10;i++){
        printf("%d\n" , rand() % 100);
    }
    getchar();
}
上邊代碼分析:
如果直接用下邊代碼實現(xiàn),可以生成隨機數(shù),但是每次運行結(jié)果都一樣
        int i;
        for (i = 0; i < 10;i++){
            printf("%d\n" , rand() % 100);
        }

解決方式:初始化發(fā)生器,每次發(fā)生器都是當(dāng)前時間,time表示每次運行時,發(fā)生器都是當(dāng)前時間,
給上邊代碼添加這個方法就可以:
    srand((unsigned)time(NULL));
3. 隨機數(shù)使用場景

使用場景:在C層 生成秘鑰:

秘鑰其實就是 把 java層代碼變成 .so庫,這樣就看不到 java層的代碼了。生成秘鑰就需要使用 隨機數(shù),直接用 rand不行的話,就需要給上邊加上srand,用 so生成秘鑰之后就更加安全。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容