apio
ffc223c2cf
Also, add prototypes for calloc() and realloc(), which were already implemented but not in the header.
48 lines
1.4 KiB
C
48 lines
1.4 KiB
C
#ifndef _STDLIB_H
|
|
#define _STDLIB_H
|
|
|
|
#include <bits/macros.h>
|
|
#include <stddef.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
/* Aborts the program. */
|
|
noreturn void abort();
|
|
|
|
/* Exits the program with the specified status code. */
|
|
noreturn void exit(int status);
|
|
|
|
/* Not implemented. */
|
|
int atexit(void (*)(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 |