ritrovai a guardare il sorgente arc4random_uniform (http://bxr.su/o/lib/libc/crypt/arc4random_uniform.c)Modulo Operatore vs Zero (re: fonte arc4random_uniform)
mia domanda riguarda la riga seguente (il commento è la loro commento originale):
/* 2**32 % x == (2**32 - x) % x */
min = -upper_bound % upper_bound;
Ora, non sono un genio della matematica, ma sicuramente -N% N sarà sempre uguale a zero. Allora perché non basta scrivere
min=0
Correlati: http://stackoverflow.com/questions/8026694/c-unary-minus-operator-behavior-with-unsigned-operands – dragosht