// Rowley C Compiler, runtime support. // // Copyright (c) 2001, 2002 Rowley Associates Limited. // // This file may be distributed under the terms of the License Agreement // provided with this software. // // THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING THE // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. #ifndef __stdlib_H #define __stdlib_H #include "__crossworks.h" #ifdef __cplusplus extern "C" { #endif #ifndef __SIZE_T_DEFINED #define __SIZE_T_DEFINED typedef __SIZE_T size_t; #endif #ifndef NULL #define NULL 0 #endif /* Definition of the argument values for the exit() function */ #define EXIT_SUCCESS 0 #define EXIT_FAILURE 1 /* Definition of value for rand() function. */ #define RAND_MAX 32767 typedef struct { int quot; int rem; } div_t; typedef struct { long quot; long rem; } ldiv_t; typedef struct { long long quot; long rem; } lldiv_t; int abs(int j); long int labs(long int j); long long int llabs(long long int j); div_t div(int numer, int denom); ldiv_t ldiv(long int numer, long int denom); lldiv_t lldiv(long long int numer, long long int denom); void *calloc(size_t nobj, size_t size); void *malloc(size_t size); void *realloc(void *p, size_t size); void free(void *p); double atof(const char *nptr); double strtod(const char *nptr, char **endptr); float strtof(const char *nptr, char **endptr); int atoi(const char *nptr); long int atol(const char *nptr); long long int atoll(const char *nptr); long int strtol(const char *nptr, char **endptr, int base); long long int strtoll(const char *nptr, char **endptr, int base); unsigned long int strtoul(const char *nptr, char **endptr, int base); unsigned long long int strtoull(const char *nptr, char **endptr, int base); int rand(void); void srand(unsigned int seed); void *bsearch( const void *key, const void *buf, size_t num, size_t size, int (*compare)(const void *, const void *) ); void qsort( void *buf, size_t num, size_t size, int (*compare)(const void *, const void *) ); void abort(void); void exit( int exit_code ); int atexit( void (*func)(void) ); char *getenv( const char *name ); int system( const char *command ); // Extensions char *itoa(int val, char *buf, int radix); char *utoa(unsigned val, char *buf, int radix); char *ltoa(long val, char *buf, int radix); char *ultoa(unsigned long val, char *buf, int radix); char *lltoa(long long val, char *buf, int radix); char *ulltoa(unsigned long long val, char *buf, int radix); #ifdef __cplusplus } #endif #endif