Originariamente inviato da UltraBeginner
se vuoi aumentare il valore del rand basta che cambi il valore di rand_max anke se, ripeto, non se sia lecito farlo. per es se vuoi numeri fino a 100000 devi impostare il valore 0x186A0 (che e' il suo equivalente in esadecimale, almeno secondo la calcolatrice....)
Ma no assolutamente!!!! Cambiare quella define non porta ad avere un range diverso.
La funzione rand() è stata studiata, implementata e quindi compilata nella libreria "standard" in un certo modo. Cambiare quella define non cambia il comportamento della rand().

Bisognerebbe esaminare il sorgente della funzione rand(), modificarlo e poi ricompilare la libreria "standard" del compilatore.

Ad esempio nel sorgente rand.c del VC++, non viene nemmeno usata la macro RAND_MAX. Viene fatto di brutto un AND con 0x7fff del valore ritornato.