rand.c - scc - simple c99 compiler
 (HTM) git clone git://git.simple-cc.org/scc
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
 (DIR) README
 (DIR) LICENSE
       ---
       rand.c (331B)
       ---
            1 #include <stdlib.h>
            2 
            3 #undef srand
            4 #undef rand
            5 
            6 static unsigned long next;
            7 
            8 void
            9 srand(unsigned seed)
           10 {
           11         next = seed;
           12 }
           13 
           14 int
           15 rand(void)
           16 {
           17         /*
           18          * next is just an arbitrary number
           19          * used to generate a random number
           20          * which is <= RAND_MAX
           21          */
           22         next = next * 1103515245 + 12345;
           23         return (unsigned)(next/65536) % (RAND_MAX + 1);
           24 }