Mercurial > projects > ldc
annotate lphobos/std/c/stdlib.d @ 1638:0de4525a9ed6
Apply workaround for #395 by klickverbot.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Mon, 08 Mar 2010 20:06:08 +0100 |
parents | 373489eeaf90 |
children |
rev | line source |
---|---|
1 | 1 /** |
2 * C's <stdlib.h> | |
3 * Authors: Walter Bright, Digital Mars, www.digitalmars.com | |
4 * License: Public Domain | |
5 * Macros: | |
6 * WIKI=Phobos/StdCStdlib | |
7 */ | |
8 | |
9 | |
10 module std.c.stdlib; | |
11 | |
12 private import std.c.stddef; | |
13 | |
14 extern (C): | |
15 | |
16 enum | |
17 { | |
18 _MAX_PATH = 260, | |
19 _MAX_DRIVE = 3, | |
20 _MAX_DIR = 256, | |
21 _MAX_FNAME = 256, | |
22 _MAX_EXT = 256, | |
23 } | |
24 | |
25 /// | |
26 struct div_t { int quot,rem; } | |
27 /// | |
28 struct ldiv_t { int quot,rem; } | |
29 /// | |
30 struct lldiv_t { long quot,rem; } | |
31 | |
32 div_t div(int,int); /// | |
33 ldiv_t ldiv(int,int); /// ditto | |
34 lldiv_t lldiv(long, long); /// ditto | |
35 | |
36 const int EXIT_SUCCESS = 0; /// | |
37 const int EXIT_FAILURE = 1; /// ditto | |
38 | |
39 int atexit(void (*)()); /// | |
40 void exit(int); /// ditto | |
41 void _exit(int); /// ditto | |
42 | |
43 int system(char *); | |
44 | |
473
373489eeaf90
Applied downs' lphobos update
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
94
diff
changeset
|
45 pragma(alloca) |
1 | 46 void *alloca(uint); /// |
47 | |
48 void *calloc(size_t, size_t); /// | |
49 void *malloc(size_t); /// ditto | |
50 void *realloc(void *, size_t); /// ditto | |
51 void free(void *); /// ditto | |
52 | |
53 void *bsearch(void *,void *,size_t,size_t, | |
54 int function(void *,void *)); /// | |
55 void qsort(void *base, size_t nelems, size_t elemsize, | |
56 int (*compare)(void *elem1, void *elem2)); /// ditto | |
57 | |
58 char* getenv(char*); /// | |
59 int setenv(char*, char*, int); /// extension to ISO C standard, not available on all platforms | |
60 void unsetenv(char*); /// extension to ISO C standard, not available on all platforms | |
61 | |
62 int rand(); /// | |
63 void srand(uint); /// ditto | |
64 int random(int num); /// ditto | |
65 void randomize(); /// ditto | |
66 | |
473
373489eeaf90
Applied downs' lphobos update
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
94
diff
changeset
|
67 int* __errno_location(); |
373489eeaf90
Applied downs' lphobos update
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
94
diff
changeset
|
68 int getErrno() { return *__errno_location(); } |
373489eeaf90
Applied downs' lphobos update
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
94
diff
changeset
|
69 int setErrno(int i) { return *__errno_location = i; } |
373489eeaf90
Applied downs' lphobos update
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
94
diff
changeset
|
70 //int getErrno(); /// ditto |
373489eeaf90
Applied downs' lphobos update
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
94
diff
changeset
|
71 //int setErrno(int); /// ditto |
1 | 72 |
73 const int ERANGE = 34; // on both Windows and linux | |
74 | |
75 double atof(char *); /// | |
76 int atoi(char *); /// ditto | |
77 int atol(char *); /// ditto | |
78 float strtof(char *,char **); /// ditto | |
79 double strtod(char *,char **); /// ditto | |
80 real strtold(char *,char **); /// ditto | |
81 long strtol(char *,char **,int); /// ditto | |
82 uint strtoul(char *,char **,int); /// ditto | |
83 long atoll(char *); /// ditto | |
84 long strtoll(char *,char **,int); /// ditto | |
85 ulong strtoull(char *,char **,int); /// ditto | |
86 | |
87 char* itoa(int, char*, int); /// | |
88 char* ultoa(uint, char*, int); /// ditto | |
89 | |
90 int mblen(char *s, size_t n); /// | |
91 int mbtowc(wchar_t *pwc, char *s, size_t n); /// ditto | |
92 int wctomb(char *s, wchar_t wc); /// ditto | |
93 size_t mbstowcs(wchar_t *pwcs, char *s, size_t n); /// ditto | |
94 size_t wcstombs(char *s, wchar_t *pwcs, size_t n); /// ditto |