Rev 6433 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6433 | Rev 6443 | ||
---|---|---|---|
1 | #ifndef stdlib_h |
1 | #ifndef stdlib_h |
2 | #define stdlib_h |
2 | #define stdlib_h |
3 | #include "kolibrisys.h" |
3 | #include "kolibrisys.h" |
4 | 4 | ||
5 | #define RAND_MAX 65535 |
5 | #define RAND_MAX 65535 |
6 | #ifndef NULL |
6 | #ifndef NULL |
7 | # define NULL ((void*)0) |
7 | # define NULL ((void*)0) |
8 | #endif |
8 | #endif |
9 | 9 | ||
10 | #define abs(i) (((i)<0)?(-(i)):(i)) |
10 | #define abs(i) (((i)<0)?(-(i)):(i)) |
11 | #define labs(li) abs(li) |
11 | #define labs(li) abs(li) |
12 | 12 | ||
13 | extern int atoib(char *s,int b); |
13 | extern int atoib(char *s,int b); |
14 | extern int atoi(char *s); |
14 | extern int atoi(char *s); |
15 | extern char *itoab(int n,char* s,int b); |
15 | extern char *itoab(unsigned int n,char* s,int b); |
16 | extern char *itoa(int n,char* s); |
16 | extern char *__itoa(int n,char* s); |
17 | 17 | ||
18 | extern void* stdcall malloc(dword size); |
18 | extern void* stdcall malloc(dword size); |
19 | extern void stdcall free(void *pointer); |
19 | extern void stdcall free(void *pointer); |
20 | extern void* stdcall realloc(void* pointer,dword size); |
20 | extern void* stdcall realloc(void* pointer,dword size); |
21 | 21 | ||
22 | extern int rand (void); |
22 | extern int rand (void); |
23 | extern void srand (unsigned int seed); |
23 | extern void srand (unsigned int seed); |
24 | 24 | ||
25 | double strtod (const char* str, char** endptr); |
25 | double strtod (const char* str, char** endptr); |
26 | long double strtold (const char* str, char** endptr); |
26 | long double strtold (const char* str, char** endptr); |
27 | float strtof (const char* str, char** endptr); |
27 | float strtof (const char* str, char** endptr); |
- | 28 | long int strtol (const char* str, char** endptr, int base); |
|
- | 29 | #define strtoul(s, ep, b) ((unsigned long int)strtol(s, ep, b)) |
|
28 | 30 | ||
29 | void* calloc (size_t num, size_t size); |
31 | void* calloc (size_t num, size_t size); |
30 | 32 | ||
31 | #define exit(a) _ksys_exit() |
33 | #define exit(a) _ksys_exit() |
32 | #define abort() exit(-1) |
34 | #define abort() exit(-1) |
33 | 35 | ||
34 | typedef struct { |
36 | typedef struct { |
35 | int quot; |
37 | int quot; |
36 | int rem; |
38 | int rem; |
37 | } div_t; |
39 | } div_t; |
38 | 40 | ||
39 | typedef div_t ldiv_t; |
41 | typedef div_t ldiv_t; |
40 | 42 | ||
41 | div_t div (int numer, int denom); |
43 | div_t div (int numer, int denom); |
42 | #define ldiv(a, b) div(a, b) |
44 | #define ldiv(a, b) div(a, b) |
43 | #define atol(a) atoi(a) |
45 | #define atol(a) atoi(a) |
- | 46 | #define atof(a) strtod(a, NULL) |
|
- | 47 | ||
- | 48 | ||
44 | 49 | ||
45 | #endif0)?(-(i)):(i)) |
50 | #endif0)?(-(i)):(i)) |
46 | #define> |
51 | #define> |