Nekem ezek a kódrészletek vannak:
char letrarand()
{
time_t t;
srand(time(NULL));
char randomletter = 'A' + (rand() % 26);
return randomletter;
}
char criameses()
{
int contador = 0;
for (contador = 0; contador < 31;++ contador)
{
*(pjaneiro + contador) = letrarand();
}
Ahol a pjaneiro egy 31 elemű tömbre mutató mutató. Elméletileg ez működik, és a tömb minden eleméhez egy véletlenszerű betűt rendelne, de mint kiderült, mindig ugyanazt a betűt rendeli hozzá.
A legjobb tippem arra vonatkozóan, hogy ez miért történik, az az, hogy a time() függvények csak másodpercig pontosak, így a véletlenszám-generátor magja mindig ugyanaz, mivel a számítógépem kevesebb mint egy másodperc alatt végrehajtja a kódot. Van valami mód arra, hogy jobban bevegyem a véletlenszám-generátort?