00001 #ifndef __STDLIB
00002 #define __STDLIB
00003
00004 #define EXIT_FAILURE 1
00005 #define EXIT_SUCCESS 0
00006 #define MB_CUR_MAX 1
00007 #define NULL 0
00008 #define RAND_MAX 32767
00009
00010 typedef struct { int quot, rem; } div_t;
00011 typedef struct { long quot, rem; } ldiv_t;
00012
00013 #if !defined(_SIZE_T) && !defined(_SIZE_T_)
00014 #define _SIZE_T
00015 #define _SIZE_T_
00016 typedef unsigned long size_t;
00017 #endif
00018
00019 #if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
00020 #define _WCHAR_T
00021 #define _WCHAR_T_
00022 typedef unsigned char wchar_t;
00023 #endif
00024
00025 extern double atof(const char *);
00026 extern int atoi(const char *);
00027 extern long int atol(const char *);
00028 extern double strtod(const char *, char **);
00029 extern long int strtol(const char *, char **, int);
00030 extern unsigned long int strtoul(const char *, char **, int);
00031 extern int rand(void);
00032 extern void srand(unsigned int);
00033 extern void *calloc(size_t, size_t);
00034 extern void free(void *);
00035 extern void *malloc(size_t);
00036 extern void *realloc(void *, size_t);
00037 extern void abort(void);
00038 extern int atexit(void (*)(void));
00039 extern void exit(int);
00040 extern char *getenv(const char *);
00041 extern int system(const char *);
00042 extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
00043 extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
00044 extern int abs(int);
00045 extern div_t div(int, int);
00046 extern long int labs(long int);
00047 extern ldiv_t ldiv(long int, long int);
00048 extern int mblen(const char *, size_t);
00049 extern int mbtowc(wchar_t *, const char *, size_t);
00050 extern int wctomb(char *, wchar_t);
00051 extern size_t mbstowcs(wchar_t *, const char *, size_t);
00052 extern size_t wcstombs(char *, const wchar_t *, size_t);
00053
00054 #endif