Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.lang.c    |    Meh, in C you gotta define EVERYTHING    |    243,242 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 242,582 of 243,242    |
|    Janis Papanagnou to Michael Sanders    |
|    Re: srand(0)    |
|    24 Dec 25 18:04:05    |
   
   From: janis_papanagnou+ng@hotmail.com   
      
   On 2025-12-24 16:41, Michael Sanders wrote:   
   >   
   > My aims (mostly just learning my around C at this point)   
   > are *much* more simple. I needed something that is   
   > seed-able/deterministic/portable allowing the user a   
   > shot at replaying a round in a silly game I've been   
   > working on every now & again:   
   >   
   > int genseed(int seed_in) {   
   > if (seed_in >= 10000000) return seed_in;   
   > unsigned long t = (unsigned long)time(NULL);   
   > unsigned long c = (unsigned long)clock();   
   > return (int)(((t ^ c) % 80000000UL) + 10000000UL);   
   > }   
   >   
      
   If you need a portable function across different platforms   
   you may want to write an own random() function, code based   
   on some simple, proven algorithm. Or borrow a piece of code   
   from some existing public source code library.   
      
   For "_replaying_ a round in a silly game" across platforms   
   (or generally) you should not seed it with time() or other   
   random factors (as shown in your code snippet).   
      
   Janis   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca