Jose Catena <jc1@diwaves.com>
[reactos.git] / reactos / lib / sdk / crt / math / rand_nt.c
1 #include <stdlib.h>
2
3 #if defined(__GNUC__)
4 static unsigned long long next = 0;
5 #else
6 static unsigned __int64 next = 0;
7 #endif
8
9 /*
10 * @implemented
11 */
12 int rand(void)
13 {
14 #if defined(__GNUC__)
15 next = next * 0x5deece66dLL + 11;
16 #else
17 next = next * 0x5deece66di64 + 11;
18 #endif
19 return (int)((next >> 16) & RAND_MAX);
20 }
21
22
23 /*
24 * @implemented
25 */
26 void srand(unsigned seed)
27 {
28 next = seed;
29 }