home *** CD-ROM | disk | FTP | other *** search
/ CD Shareware Magazine 1996 December / CD_shareware_12-96.iso / DOS / Programa / CCDL122.ZIP / CLIBS / STDINC / STDLIB.H < prev    next >
Encoding:
C/C++ Source or Header  |  1996-06-15  |  5.6 KB  |  170 lines

  1. #ifndef __STDLIB_H
  2. #define __STDLIB_H
  3.  
  4. #ifndef NULL
  5. #define NULL 0
  6. #endif
  7.  
  8.  
  9. #ifndef _PTRDIFF_T
  10. #define _PTRDIFF_T
  11. typedef long    ptrdiff_t;
  12. #endif
  13.  
  14. #ifndef _SIZE_T
  15. #define _SIZE_T
  16. typedef unsigned size_t;
  17. #endif
  18.  
  19. #define offsetof( s_name, m_name )  (size_t)&(((s_name _FAR *)0)->m_name)
  20.  
  21. #ifndef _WCHAR_T
  22. #define _WCHAR_T
  23. typedef unsigned wchar_t;
  24. #endif
  25.  
  26. #ifndef _DIV_T
  27. #define _DIV_T
  28. typedef struct {
  29.         int     quot;
  30.         int     rem;
  31. } div_t;
  32. #endif
  33.  
  34. #define MB_CUR_MAX 18
  35.  
  36. /* Maximum value returned by "rand" function
  37. */
  38. #define RAND_MAX 0x7FFFU
  39.  
  40. #define EXIT_SUCCESS 0
  41. #define EXIT_FAILURE 1
  42.  
  43. typedef void (* atexit_t)(void);
  44.  
  45.  
  46. void         abort(void);
  47.  
  48. #if !defined(__ABS_DEFINED)
  49. #define __ABS_DEFINED
  50.  
  51. int          __abs__(int);
  52. int         abs(int __x);
  53. #  define abs(x)   __abs__(x)
  54.  
  55. #endif /* __ABS_DEFINED */
  56.  
  57. int         atexit(void (*__func)(void));
  58. double      atof(const char *__s);
  59. int         atoi(const char *__s);
  60. long        atol(const char *__s);
  61. void * bsearch(const void *__key, const void *__base,
  62.                            size_t __nelem, size_t __width,
  63.                            int (*fcmp)(const void *,
  64.                            const void *));
  65. void * calloc(size_t __nitems, size_t __size);
  66. div_t       div(int __numer, int __denom);
  67. void        exit(int __status);
  68. void        free(void *__block);
  69. char * getenv(const char *__name);
  70. void * malloc(size_t __size);
  71. int          mblen(const char *__s, size_t __n);
  72. size_t       mbstowcs(wchar_t *__pwcs, const char *__s,
  73.                                     size_t __n);
  74. int          mbtowc(wchar_t *__pwc, const char *__s, size_t __n);
  75. void         qsort(void *__base, size_t __nelem, size_t __width,
  76.                        int (* __fcmp)(const void *, const void *));
  77. int         rand(void);
  78. void  *realloc(void *__block, size_t __size);
  79. void        srand(unsigned __seed);
  80. double      strtod(const char *__s, char **__endptr);
  81. long          strtol(const char *__s, char **__endptr,
  82.                                     int __radix);
  83. double _strtold(const char *__s, char **__endptr);
  84. unsigned long   strtoul(const char *__s, char **__endptr,
  85.                                        int __radix);
  86. int           system(const char *__command);
  87. size_t       wcstombs(char *__s, const wchar_t *__pwcs,
  88.                                     size_t __n);
  89. int          wctomb(char *__s, wchar_t __wc);
  90. int          wctombflush(char *__s);
  91.  
  92. extern  char          ** _environ;
  93. extern  int              _fmode;
  94. extern  unsigned char    _osmajor;
  95. extern  unsigned char    _osminor;
  96. extern  unsigned int     _version;
  97.  
  98.  
  99. #define atoi(s)     ((int) atol(s))
  100.  
  101. /* Constants for MSC pathname functions */
  102.  
  103. #define _MAX_PATH       80
  104. #define _MAX_DRIVE      3
  105. #define _MAX_DIR        66
  106. #define _MAX_FNAME      9
  107. #define _MAX_EXT        5
  108.  
  109. double     _atold(const char *__s);
  110. unsigned char   _crotl(unsigned char __value, int __count);
  111. unsigned char   _crotr(unsigned char __value, int __count);
  112. char     * ecvt(double __value, int __ndig, int *__dec,
  113.                            int *__sign);
  114. void            _exit(int __status);
  115. char     * fcvt(double __value, int __ndig, int *__dec,
  116.                            int *__sign);
  117. char     *  _fullpath( char *__buf,
  118.                                  const char *__path,
  119.                                  size_t __maxlen );
  120. char     * gcvt(double __value, int __ndec, char *__buf);
  121. char     *  itoa(int __value, char *__string, int __radix);
  122. void     *  lfind(const void *__key, const void *__base,
  123.                                  size_t *__num, size_t __width,
  124.                                  int (* __fcmp)(const void *,
  125.                                  const void *));
  126.  
  127. void     *  lsearch(const void *__key, void *__base,
  128.                                  size_t *__num, size_t __width,
  129.                            int (* __fcmp)(const void *, const void *));
  130. char     *  ltoa(long __value, char *__string, int __radix);
  131. void             _makepath( char *__path,
  132.                                  const char *__drive,
  133.                                  const char *__dir,
  134.                                  const char *__name,
  135.                                  const char *__ext );
  136. int              putenv(const char *__name);
  137.  
  138. unsigned        __rotl__(unsigned __value, int __count);     /* intrinsic */
  139. unsigned        __rotr__(unsigned __value, int __count);     /* intrinsic */
  140.  
  141. void            _searchenv(const char *__file,
  142.                                  const char *__varname,
  143.                                  char *__pathname);
  144. void            _searchstr(const char *__file,
  145.                                  const char *__ipath,
  146.                                  char *__pathname);
  147. void             _splitpath( const char *__path,
  148.                                  char *__drive,
  149.                                  char *__dir,
  150.                                  char *__name,
  151.                                  char *__ext );
  152. void             swab(char *__from, char *__to, int __nbytes);
  153. char     *  ultoa(unsigned long __value, char *__string,
  154.                                  int __radix);
  155.  
  156. #define  _rotl(__value, __count)  __rotl__(__value, __count)
  157. #define  _rotr(__value, __count)  __rotr__(__value, __count)
  158.  
  159.  
  160. #define random(num)((rand()*(num))/((RAND_MAX+1))
  161.  
  162.  
  163.  
  164. #define randomize() srand((unsigned)time(NULL))
  165. #define max(a,b)    (((a) > (b)) ? (a) : (b))
  166. #define min(a,b)    (((a) < (b)) ? (a) : (b))
  167.  
  168. #define _itoa(__value, __string, __radix) itoa(__value, __string, __radix)
  169.  
  170. #endif  /* __STDLIB_H */