vendredi 5 mars 2021

c++ My random gen randomly gens something but it does it in the same order every time u run it

So ive made a MAC Address generator. But the random part is very strange. It randomly generates a number that i use to choose something from an array. But each time you run the exe. It gens the same number. Here is my code

#include <random>
#include <string>
//Mac Addr example -> 82-F5-4D-72-C1-EA
//6 two char sets
//Dont include spaces/dashes/dots

std::string chars[] = { "A","B","C","D","E","F" };
int nums[] = { 0,1,2,3,4,5,6,7,8,9 };

std::string GenMacAddr()
{
    std::string final;
    std::string CharSet;
    int choice;
    for (int i = 0; i < 6; i++) {
        choice = 1 + rand() % 4;
        if (choice == 1) { //Char Set only int
            for (int x = 0; x < 2; x++) { //Makes action happen twice
                final += std::to_string(nums[rand()%10]);
            }
        }
        else if (choice == 2) { //Char set only str
            for (int x = 0; x < 2; x++) { //Makes action happen twice
                final += chars[rand() % 6];
            }
        }
        else if (choice == 3) {
            final += chars[rand() % 6];
            final += std::to_string(nums[rand() % 10]);
        }
        else if (choice == 4) {
            final += std::to_string(nums[rand() % 10]);
            final += chars[rand() % 6] ;
        }
    }
    
    return final;
}



Aucun commentaire:

Enregistrer un commentaire