Embedded Artistry libc
C Standard Library Support for Bare-metal Systems
limits.h
Go to the documentation of this file.
1 #ifndef LIMITS_H__
2 #define LIMITS_H__
3 
4 // System Specific Limits
5 #include <_limits.h>
6 
7 /* Support signed or unsigned plain-char */
8 
9 #if '\0' - 1 > 0
10 
12 #define CHAR_MIN 0
13 
15 #define CHAR_MAX 255
16 #else
17 
19 #define CHAR_MIN (-128)
20 
22 #define CHAR_MAX 127
23 #endif
24 
25 /* Some universal constants... */
26 
28 #define CHAR_BIT 8
29 
31 #define SCHAR_MIN (-128)
32 
34 #define SCHAR_MAX 127
35 
37 #define UCHAR_MAX 255
38 
40 #define SHRT_MIN (-1 - 0x7fff)
41 
43 #define SHRT_MAX 0x7fff
44 
46 #define USHRT_MAX 0xffff
47 
49 #define INT_MIN (-1 - 0x7fffffff)
50 
52 #define INT_MAX 0x7fffffff
53 
55 #define UINT_MAX 0xffffffffU
56 
58 #define LONG_MIN (-LONG_MAX - 1)
59 
61 #define ULONG_MAX (2UL * LONG_MAX + 1)
62 
64 #define LLONG_MIN (-LLONG_MAX - 1)
65 
67 #define ULLONG_MAX (2ULL * LLONG_MAX + 1)
68 
70 #define MB_LEN_MAX 4
71 
72 #endif // LIMITS_H__