mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
rand: rand_r(seed)
This commit is contained in:

committed by
Alexander Medvednikov

parent
083d747302
commit
ff009f1c4e
@ -12,4 +12,18 @@ pub fn next(max int) int {
|
||||
return C.rand() % max
|
||||
}
|
||||
|
||||
fn C.rand() int
|
||||
fn C.rand() int
|
||||
|
||||
/**
|
||||
* rand_r - reentrant pseudo-random number generator
|
||||
*
|
||||
* @param seed byref reentrant seed, holding current state
|
||||
*
|
||||
* @return a value between 0 and C.RAND_MAX (inclusive)
|
||||
*/
|
||||
pub fn rand_r(seed &int) int {
|
||||
mut rs := seed
|
||||
ns := ( *rs * 1103515245 + 12345 )
|
||||
*rs = ns
|
||||
return ns & 0x7fffffff
|
||||
}
|
||||
|
Reference in New Issue
Block a user