#ifndef _STDLIB_H #define _STDLIB_H #include #include #ifdef __cplusplus extern "C" { #endif /* Aborts the program. */ noreturn void abort(); /* Normally exits the program with the specified status code. */ noreturn void exit(int status); /* Registers a handler function to be run at normal program termination. */ int atexit(void (*handler)(void)); /* Not implemented.*/ int atoi(const char*); /* Not implemented. */ char* getenv(const char*); /* Allocates n bytes of memory and returns a pointer to it. This memory should be freed by calling free() when it is * not in use anymore. */ void* malloc(size_t n); /* Allocates enough bytes of memory for an array containing nmemb items of size n and returns a pointer to it. This * memory should be freed by calling free() when it is not in use anymore. */ void* calloc(size_t nmemb, size_t n); /* Resizes memory allocated by malloc() or calloc() to n bytes. Returns a pointer to the new resized region of * memory, which should be used instead of the old one. This memory should be freed by calling free() when it is not * in use anymore. */ void* realloc(void* ptr, size_t n); /* Frees a pointer to memory allocated by malloc(), calloc() or realloc(). Accessing the contents of ptr afterwards * is undefined behavior. */ void free(void* ptr); #ifdef __cplusplus } #endif #endif