X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=includes%2Fstdlib.h;h=500060ce82f942ff21ee510ecac984390b6c7767;hb=b18c386cb4b41de41afdb52de98b46b82f00f0ca;hp=4518f2273111f603df9b25fb88d1c8283133288d;hpb=ac3f809c3c10347c110fac3db93af0954eda98bb;p=pdclib diff --git a/includes/stdlib.h b/includes/stdlib.h index 4518f22..500060c 100644 --- a/includes/stdlib.h +++ b/includes/stdlib.h @@ -10,13 +10,16 @@ #ifndef __STDLIB_H #define __STDLIB_H __STDLIB_H +// TODO: Documentation + // ---------------------------------------------------------------------------- // MACROS +#include "__NULL.h" + #define EXIT_FAILURE // TODO #define EXIT_SUCCESS // TODO #define MB_CUR_MAX // TODO -#define NULL 0 #define RAND_MAX // TODO // ---------------------------------------------------------------------------- @@ -39,42 +42,11 @@ typedef struct long long remainder; } lldiv_t; -typedef size_t; // TODO - -#ifndef __cplusplus -typedef wchar_t; // TODO -#endif // __cplusplus - -// ---------------------------------------------------------------------------- -// FUNCTIONS - C++ - -#ifdef __cplusplus - -long abs( long i ); -long long abs( long long i ); - -ldiv_t div( long numer, long denom ); -lldiv_t div( long long numer, long long denom ); - -extern "C++" int atexit( void (*func) ( void ) ); -extern "C" int atexit( void (*func) ( void ) ); - -extern "C++" void * bsearch( const void * key, const void * base, - size_t nelem, size_t size, - int (*cmp) ( const void * ck, const void * ce ) ); -extern "C" void * bsearch( const void * key, const void * base, - size_t nelem, size_t size, - int (*cmp) ( const void * ck, const void * ce ) ); - -extern "C++" void qsort( void * base, size_t nelem, size_t size, - int (*cmp) ( const void * e1, const void * e2 ) ); -extern "C" void qsort( void * base, size_t nelem, size_t size, - int (*cmp) ( const void * e1, const void * e2 ) ); - -#endif // __cplusplus +#include "__size_t.h" +#include "__wchar_t.h" // ---------------------------------------------------------------------------- -// FUNCTIONS - Standard C +// FUNCTIONS int abs( int i ); long long llabs( long long i ); @@ -119,14 +91,8 @@ void abort( void ); char * getenv( const char * name ); int system( const char * s ); -#ifndef __cplusplus - int atexit( void (*func) ( void ) ); -void * bsearch( const void * key, const void * base, size_t nelem, size_t size, - int (*cmp) ( const void * ck, const void * ce) ); -void qsort( void * base, size_t nelem, size_t size, - int (*cmp) ( const void * e1, const void * e2) ); - -#endif // __cplusplus +void * bsearch( const void * key, const void * base, size_t nelem, size_t size, int (*cmp) ( const void * ck, const void * ce) ); +void qsort( void * base, size_t nelem, size_t size, int (*cmp) ( const void * e1, const void * e2) ); #endif // __STDLIB_H