limits.h — Standard values for limits on resources

The limits.h header file contains symbolic names that represent standard values for limits on resources, such as the maximum value for an object of type char.

Table 1. Definitions of resource limits (limits.h)
ATEXIT_MAX 2048
BC_DIM_MAX 32768
BC_SCALE_MAX 32767
BC_STRING_MAX 2048
CHAR_BIT 8
CHAR_MAX 127 (_CHAR_SIGNED)
CHAR_MAX 255
CHAR_MIN (-128) (_CHAR_SIGNED)
CHAR_MIN 0
COLL_WEIGHTS_MAX 2
__DIR_NAME_MAX 256
EXPR_NEST_MAX 32
INT_MAX 2147483647
INT_MIN (-2147483647 - 1)
LINE_MAX 2048
LLONG_MAX (9223372036854775807LL)
LLONG_MIN (-LLONG_MAX-1)
LONG_MAX 2147483647
LONGLONG_MAX (9223372036854775807LL)
LONG_MIN (-2147483647L - 1)
LONGLONG_MIN (-LONGLONG_MAX - 1)
MB_LEN_MAX 4
NGROUPS_MAX 300
PASS_MAX 255
_POSIX_ARG_MAX 4096
_POSIX_CHILD_MAX 25
_POSIX_DATAKEYS_MAX 32
_POSIX_LINK_MAX 8
_POSIX_MAX_CANON 255
_POSIX_MAX_INPUT 255
_POSIX_NAME_MAX 14
_POSIX_NGROUPS_MAX 8
_POSIX_OPEN_MAX 20
_POSIX_PATH_MAX 255
_POSIX_PIPE_BUF 512
_POSIX_SSIZE_MAX 32767
_POSIX_STREAM_MAX 8
POSIX_SYMLOOP 24
_POSIX_TZNAME_MAX 6
_POSIX2_BC_BASE_MAX 99
_POSIX2_BC_DIM_MAX 2048
_POSIX2_BC_SCALE_MAX 99
_POSIX2_BC_STRING_MAX 1000
_POSIX2_COLL_WEIGHTS_MAX 2
_POSIX2_EXPR_NEST_MAX 32
_POSIX2_LINE_MAX 2048
_POSIX2_RE_DUP_MAX 255
RE_DUP_MAX 255
SCHAR_MAX 127
SCHAR_MIN (-128)
SHRT_MAX 32767
SHRT_MIN (-32768)
SSIZE_MAX 2147483647
UCHAR_MAX 255
UINT_MAX 4294967295
ULONG_MAX 4294967295U
ULONGLONG_MAX (18446744073709551615ULL)
ULLONG_MAX (18446744073709551615ULL)
USHRT_MAX 65535

When compiled with SUSV3 thread support (_UNIX03_THREADS or _XOPEN_SOURCE 600), limits.h adds the following constants:

PTHREAD_STACK_MIN 4096 (1048576 in 64-bit)
_POSIX_THREAD_
DESTRUCTOR_ITERATIONS
4
_POSIX_THREAD_KEYS_MAX 128
_POSIX_THREAD_THREADS_MAX 64