rand() renvoie toujours la même séquence de redémarrage de l'application

J'ai la méthode suivante qui génère un nombre aléatoire:

int random_number() //Random number generator
{
    int x = rand() % 1000000 + 1; //Generate an integer between 1 and 1000000
    return x;
}

L'appel à cette méthode est utilisée dans une boucle qui parcourt cinq fois. Le problème avec cette méthode est qu'il semble toujours à générer le même nombre lors de l'exécution du programme à plusieurs reprises. Comment cela peut-il être résolu?

srand() peut venir dans maniable. Cependant, vous pouvez être déprimé pour prendre modulo quand/si vous découvrez 1000000 est sensiblement plus grande que la plupart de la mise en œuvre des définitions de RAND_MAX.

OriginalL'auteur Matthew | 2012-11-07