How to assign a random number using a cryptographically secure random number generator in C

2 Answers

0 votes
#include <stdio.h>
#include <sys/random.h>

int main() {
    unsigned int randomNumber;
    
    // Linux
    if (getrandom(&randomNumber, sizeof(randomNumber), 0) == -1) {
        perror("getrandom failed");
        return 1;
    }
    
    printf("Random Number: %u\n", randomNumber);
    
    return 0;
}



/*
run:

Random Number: 2089555610

*/

 



answered Aug 20, 2025 by avibootz
0 votes
#include <stdio.h>
#define _CRT_RAND_S
#include <stdlib.h>


int main() {
    unsigned int randomNumber;
    
    // Windows
    if (rand_s(&randomNumber) != 0) {
        fprintf(stderr, "Failed to generate a random number.\n");
        return 1;
    }
    printf("Random Number: %u\n", randomNumber);

    return 0;
}



/*
run

Random Number: 2402056462

*/

 



answered Aug 20, 2025 by avibootz
...