stdlib.h - scc - simple c99 compiler
(HTM) git clone git://git.simple-cc.org/scc
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Submodules
(DIR) README
(DIR) LICENSE
---
stdlib.h (2156B)
---
1 #ifndef _STDLIB_H
2 #define _STDLIB_H
3
4 #define _NEED_NULL
5 #define _NEED_SIZET
6 #define _NEED_WCHART
7 #include <sys/cdefs.h>
8 #include <sys/stdlib.h>
9 #include <arch/cdefs.h>
10 #include <arch/stdlib.h>
11
12 #define _ATEXIT_MAX 32
13 #define MB_CUR_MAX 4
14
15 #define RAND_MAX 32767
16
17 typedef struct {
18 int quot, rem;
19 } div_t;
20
21 typedef struct {
22 long quot, rem;
23 } ldiv_t;
24
25 typedef struct {
26 long long quot, rem;
27 } lldiv_t;
28
29 extern double atof(const char *);
30 extern int atoi(const char *);
31 extern long int atol(const char *);
32 extern long long int atoll(const char *);
33 extern double strtod(const char *restrict, char **restrict);
34 extern float strtof(const char *restrict, char **restrict);
35 extern long double strtold(const char *restrict, char **restrict);
36 extern long int strtol(const char *restrict, char **restrict, int);
37 extern long long int strtoll(const char *restrict, char **restrict, int);
38 extern unsigned long int strtoul(const char *restrict, char **restrict, int);
39 extern unsigned long long int strtoull(const char *restrict, char **restrict,
40 int);
41 extern int rand(void);
42 extern void srand(unsigned int);
43 extern void *calloc(size_t, size_t);
44 extern void free(void *);
45 extern void *malloc(size_t);
46 extern void *realloc(void *, size_t);
47 extern void abort(void);
48 extern int atexit(void (*)(void));
49 extern void exit(int);
50 extern void _Exit(int);
51 extern char *getenv(const char *);
52 extern int system(const char *);
53 extern void *bsearch(const void *, const void *, size_t, size_t,
54 int (*)(const void *, const void *));
55 extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
56 extern int abs(int);
57 extern long int labs(long int);
58 extern long long int llabs(long long int);
59 extern div_t div(int, int);
60 extern ldiv_t ldiv(long int, long int);
61 extern lldiv_t lldiv(long long int, long long int);
62
63 extern int mblen(const char *, size_t);
64 extern int mbtowc(wchar_t *restrict, const char *restrict, size_t);
65 extern int wctomb(char *, wchar_t);
66 extern size_t mbstowcs(wchar_t *restrict, const char *restrict, size_t);
67 extern size_t wcstombs(char *restrict, const wchar_t *restrict, size_t);
68
69 #endif