xref: /reactos/sdk/lib/crt/stdlib/rand_nt.c (revision 299e4305)
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 __cdecl 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 __cdecl srand(unsigned seed)
27 {
28 	next = seed;
29 }
30