1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #include <stdlib.h>
- extern int __drand48_iterate(unsigned short xsubi[3],
- struct drand48_data *buffer);
- int nrand48_r (xsubi, buffer, result)
- unsigned short int xsubi[3];
- struct drand48_data *buffer;
- long int *result;
- {
-
- if (__drand48_iterate (xsubi, buffer) < 0)
- return -1;
-
- if (sizeof (unsigned short int) == 2)
- *result = xsubi[2] << 15 | xsubi[1] >> 1;
- else
- *result = xsubi[2] >> 1;
- return 0;
- }
|