int random = (rand () / RAND_MAX) * m_numberPossibilities;
En als je twee integers deelt doe je toch een integerdeling en krijg je altijd een geheel getal? Dacht ik toch...
verder zou ik proberen van die int een unsigned int geven, dat levert je eenstd::numeric_limits<int>::max()^2 op, welke wel afdoende kan zijn.
minne om 22:25, 5-11-2003m_numberPossibilities is gewoon een int, geen pointer. Dat unsigned maken had ik al geprobeerd, zonder resultaat... Enige oplossing is waarschijnlijk m'n stdlib.h aanpassen :?
Dat zou ik niet doen (aanpassen stdlib.h) waarom define je niet gewoon je eigen RAND_MAX?
remember: het kan ook een samenloop van omstandigheden zijn (geen unsigned int, een te hogen randmax, etc etc)
unsigned long int random = ((int)(rand () / RAND_MAX)) * m_numberPossibilities;
mijn RAND_MAX = 1879048.0+e03 (maw: 0x7FFFFFFF)