ReactOS
0.4.16-dev-340-g0540c21
rand.c
Go to the documentation of this file.
1
/* Copyright (C) 1994 DJ Delorie, see COPYING.DJ for details */
2
#include <precomp.h>
3
#include <
ntsecapi.h
>
4
#include <
internal/tls.h
>
5
6
/*
7
* @implemented
8
*/
9
int
10
rand
(
void
)
11
{
12
thread_data_t
*
data
=
msvcrt_get_thread_data
();
13
14
/* this is the algorithm used by MSVC, according to
15
* http://en.wikipedia.org/wiki/List_of_pseudorandom_number_generators */
16
data
->random_seed =
data
->random_seed * 214013 + 2531011;
17
return
(
data
->random_seed >> 16) &
RAND_MAX
;
18
}
19
20
/*
21
* @implemented
22
*/
23
void
24
srand
(
unsigned
int
seed)
25
{
26
thread_data_t
*
data
=
msvcrt_get_thread_data
();
27
data
->random_seed = seed;
28
}
data
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition:
gl.h:1950
RAND_MAX
#define RAND_MAX
Definition:
stdlib.h:87
msvcrt_get_thread_data
thread_data_t * msvcrt_get_thread_data(void)
Definition:
tls.c:31
ntsecapi.h
srand
void srand(unsigned int seed)
Definition:
rand.c:24
rand
int rand(void)
Definition:
rand.c:10
tls.h
thread_data_t
Definition:
mshtml_private.h:1090
sdk
lib
crt
stdlib
rand.c
Generated on Fri Dec 13 2024 06:13:39 for ReactOS by
1.9.6