- Define _CTYPE_DISABLE_MACROS for MSVC build.
[reactos.git] / reactos / lib / string / rand.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 }