Annotation of os2sdk/include/stdlib.h, revision 1.1.1.1

1.1       root        1: /***
                      2: *stdlib.h - declarations/definitions for commonly used library functions
                      3: *
                      4: *   Copyright (c) 1985-1987, Microsoft Corporation.  All rights reserved.
                      5: *
                      6: *Purpose:
                      7: *   This include file contains the function declarations for
                      8: *   commonly used library functions which either don't fit somewhere
                      9: *   else, or, like toupper/tolower, can't be declared in the normal
                     10: *   place (ctype.h in the case of toupper/tolower) for other reasons.
                     11: *   [ANSI]
                     12: *
                     13: *******************************************************************************/
                     14: 
                     15: 
                     16: #ifndef _SIZE_T_DEFINED
                     17: typedef unsigned int size_t;
                     18: #define _SIZE_T_DEFINED
                     19: #endif
                     20: 
                     21: #ifndef NO_EXT_KEYS /* extensions enabled */
                     22:     #define _CDECL  cdecl
                     23:     #define _NEAR   near
                     24: #else /* extensions not enabled */
                     25:     #define _CDECL
                     26:     #define _NEAR
                     27: #endif /* NO_EXT_KEYS */
                     28: 
                     29: 
                     30: /* definition of the return type for the onexit() function */
                     31: 
                     32: #ifndef _ONEXIT_T_DEFINED
                     33: typedef int (_CDECL * _CDECL onexit_t)();
                     34: #define _ONEXIT_T_DEFINED
                     35: #endif
                     36: 
                     37: 
                     38: /* Data structure definitions for div and ldiv runtimes. */
                     39: 
                     40: #ifndef _DIV_T_DEFINED
                     41: 
                     42: typedef struct {
                     43:     int quot;
                     44:     int rem;
                     45: } div_t;
                     46: 
                     47: typedef struct {
                     48:     long quot;
                     49:     long rem;
                     50: } ldiv_t;
                     51: 
                     52: #define _DIV_T_DEFINED
                     53: #endif
                     54: 
                     55: /* Maximum value that can be returned by the rand function. */
                     56: 
                     57: #define RAND_MAX 0x7fff
                     58: 
                     59: 
                     60: /* min and max macros */
                     61: 
                     62: #define max(a,b)    (((a) > (b)) ? (a) : (b))
                     63: #define min(a,b)    (((a) < (b)) ? (a) : (b))
                     64: 
                     65: 
                     66: /* sizes for buffers used by the _makepath() and _splitpath() functions.
                     67:  * note that the sizes include space for 0-terminator
                     68:  */
                     69: 
                     70: #define _MAX_PATH   80      /* max. length of full pathname */
                     71: #define _MAX_DRIVE   3      /* max. length of drive component */
                     72: #define _MAX_DIR    66      /* max. length of path component */
                     73: #define _MAX_FNAME   9      /* max. length of file name component */
                     74: #define _MAX_EXT     5      /* max. length of extension component */
                     75: 
                     76: /* external variable declarations */
                     77: 
                     78: extern int _NEAR _CDECL errno;              /* XENIX style error number */
                     79: extern int _NEAR _CDECL _doserrno;          /* MS-DOS system error value */
                     80: extern char * _NEAR _CDECL sys_errlist[];   /* perror error message table */
                     81: extern int _NEAR _CDECL sys_nerr;           /* # of entries in sys_errlist table */
                     82: 
                     83: extern char ** _NEAR _CDECL environ;        /* pointer to environment table */
                     84: 
                     85: extern unsigned int _NEAR _CDECL _psp;      /* Program Segment Prefix */
                     86: 
                     87: extern int _NEAR _CDECL _fmode;             /* default file translation mode */
                     88: 
                     89: /* DOS major/minor version numbers */
                     90: 
                     91: extern unsigned char _NEAR _CDECL _osmajor;
                     92: extern unsigned char _NEAR _CDECL _osminor;
                     93: 
                     94: #define DOS_MODE    0   /* Real Address Mode */
                     95: #define OS2_MODE    1   /* Protected Address Mode */
                     96: 
                     97: extern unsigned char _NEAR _CDECL _osmode;
                     98: 
                     99: 
                    100: /* function prototypes */
                    101: 
                    102: void _CDECL abort(void);
                    103: int _CDECL abs(int);
                    104: int _CDECL atexit(void (_CDECL *)(void));
                    105: double _CDECL atof(const char *);
                    106: int _CDECL atoi(const char *);
                    107: long _CDECL atol(const char *);
                    108: void * _CDECL bsearch(const void *, const void *, size_t, size_t, int (_CDECL *)(const void *, const void *));
                    109: void * _CDECL calloc(size_t, size_t);
                    110: div_t _CDECL div(int, int);
                    111: char * _CDECL ecvt(double, int, int *, int *);
                    112: void _CDECL exit(int);
                    113: void _CDECL _exit(int);
                    114: char * _CDECL fcvt(double, int, int *, int *);
                    115: void _CDECL free(void *);
                    116: char * _CDECL gcvt(double, int, char *);
                    117: char * _CDECL getenv(const char *);
                    118: char * _CDECL itoa(int, char *, int);
                    119: long _CDECL labs(long);
                    120: ldiv_t _CDECL ldiv(long, long);
                    121: unsigned long _CDECL _lrotl(unsigned long, int);
                    122: unsigned long _CDECL _lrotr(unsigned long, int);
                    123: char * _CDECL ltoa(long, char *, int);
                    124: void _CDECL _makepath(char *, char *, char *, char *, char *);
                    125: void * _CDECL malloc(size_t);
                    126: onexit_t _CDECL onexit(onexit_t);
                    127: void _CDECL perror(const char *);
                    128: int _CDECL putenv(char *);
                    129: void _CDECL qsort(void *, size_t, size_t, int (_CDECL *)(const void *, const void *));
                    130: unsigned int _CDECL _rotl(unsigned int, int);
                    131: unsigned int _CDECL _rotr(unsigned int, int);
                    132: int _CDECL rand(void);
                    133: void * _CDECL realloc(void *, size_t);
                    134: void _CDECL _searchenv(char *, char *, char *);
                    135: void _CDECL _splitpath(char *, char *, char *, char *, char *);
                    136: void _CDECL srand(unsigned int);
                    137: double _CDECL strtod(const char *, char **);
                    138: long _CDECL strtol(const char *, char **, int);
                    139: unsigned long _CDECL strtoul(const char *, char **, int);
                    140: void _CDECL swab(char *, char *, int);
                    141: int _CDECL system(const char *);
                    142: char * _CDECL ultoa(unsigned long, char *, int);
                    143: 
                    144: #ifndef tolower         /* tolower has been undefined - use function */
                    145: int _CDECL tolower(int);
                    146: #endif  /* tolower */
                    147: 
                    148: #ifndef toupper         /* toupper has been undefined - use function */
                    149: int _CDECL toupper(int);
                    150: #endif  /* toupper */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.