[C] générer caractères aléatoires

Résolu
Zestyr Messages postés 466 Date d'inscription mercredi 12 août 2009 Statut Membre Dernière intervention 17 octobre 2011 - 24 janv. 2010 à 15:58
Zestyr Messages postés 466 Date d'inscription mercredi 12 août 2009 Statut Membre Dernière intervention 17 octobre 2011 - 24 janv. 2010 à 19:31
Bonjour,
Je voudrais créer une fonction qui génère des caractères aléatoires avec un délai de 1ms max, si c'est possible moins !

Voila mon code
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h> // pour le Sleep();

#define PAUSE printf("<ENTER> pour continuer\n");getchar();
int alInt(int max);
int alChar(char *car);

int main()
{
    char car[36] = {"azertyuiopqsdfghjklmwxcvbn0123456789"}; /* 35 caractères diférents */
    printf("%c\n", alChar(car));
    Sleep(1000); // Si on attend pas une seconde le caractère généré sera le même !
    printf("%c\n", alChar(car));

    PAUSE
    return 0;
}

int alInt(int max)
{
    int c;
    srand(time(NULL));
    c = rand() % max;
    return (int) c;
}

int alChar(char *car)
{
    return car[alInt(strlen(car)-1)];
}


Voila mon idée serait de trouver une fonction qui retourne le timestamp en ms mais je sais pas si ça existe !

Merci pour vos réponses !

Cordialement Zestyr
A voir également:

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
24 janv. 2010 à 18:17
srand(time(NULL));
C'est 1 seule fois au début de main().

ciao...
BruNews, MVP VC++
3
Rejoignez-nous