X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=includes%2Fstdlib.h;h=500060ce82f942ff21ee510ecac984390b6c7767;hb=33ea80a48bfc48263e3cc855e7a4bfef7ebe8d98;hp=c0efa68273dff2c5228ec7c517dfb06494ceacb4;hpb=c6c6780c8ee488461ffd0adbfdda60d1adce8c4e;p=pdclib diff --git a/includes/stdlib.h b/includes/stdlib.h index c0efa68..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,27 +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 ); - -#endif // __cplusplus +#include "__size_t.h" +#include "__wchar_t.h" // ---------------------------------------------------------------------------- -// FUNCTIONS - Standard C +// FUNCTIONS int abs( int i ); long long llabs( long long i ); @@ -104,15 +91,8 @@ void abort( void ); char * getenv( const char * name ); int system( const char * s ); -#ifdef __cplusplus -#define __cppwrapper( x ) extern "C++" x \ -extern "C" x -#else -#define __cppwrapper( x ) x -#endif // __cplusplus - -__cppwrapper( int atexit( void (*func) ( void ) ) { /* TODO */ }; ) -__cppwrapper( void * bsearch( const void * key, const void * base, size_t nelem, size_t size, int (*cmp) ( const void * ck, const void * ce) ) { /* TODO */ }; ) -__cppwrapper( void qsort( void * base, size_t nelem, size_t size, int (*cmp) ( const void * e1, const void * e2) ) { /* TODO */ }; ) +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 // __STDLIB_H