man Pages(4): File Formats
  Search only this book
Download this book in PDF

NAME

limits - header for implementation-specific constants

SYNOPSIS

#include <limits.h>

DESCRIPTION

The header <limits.h> is a list of minimal magnitude limitations imposed by a specific implementation of the operating system.
ARG_MAX          1048320               /** max length of arguments to exec ** /
CHAR_BIT         8                     /** max # of bits in a "char" ** /
CHAR_MAX         255                   /** max value of a "char" ** /
CHAR_MIN         0                     /** min value of a "char" ** /
CHILD_MAX        25                    /** max # of processes per user id ** /
CLK_TCK          _sysconf(3)           /** clock ticks per second ** /
DBL_DIG          15                    /** digits of precision of a "double" ** /
DBL_MAX          1.7976931348623157E+308/** max decimal value of a "double"** /
DBL_MIN          2.2250738585072014E-308/** min decimal value of a "double"** /
FCHR_MAX         1048576               /** historical default file size limit in bytes ** /
FLT_DIG          6                     /** digits of precision of a "float" ** /
FLT_MAX          3.40282347e+38F       /** max decimal value of a "float" ** /
FLT_MIN          1.17549435E-38F       /** min decimal value of a "float" ** /
INT_MAX          2147483647            /** max value of an "int" ** /
INT_MIN          (-2147483647-1)       /** min value of an "int" ** /
LINK_MAX         1000                  /** max # of links to a single file ** /
LOGNAME_MAX      8                     /** max # of characters in a login name ** /
LONG_BIT         32                    /** # of bits in a "long" ** /
LONG_MAX         2147483647            /** max value of a "long int" ** /
LONG_MIN         (-2147483647-1)       /** min value of a "long int" ** /
MAX_CANON        256                   /** max bytes in a line for canonical
                                       processing ** /
MAX_INPUT        512                   /** max size of a char input buffer ** /
MB_LEN_MAX       5                     /** max # of bytes in a multibyte
                                       character ** /
NAME_MAX         14                    /** max # of characters in a file name ** /
NGROUPS_MAX      16                    /** max # of groups for a user ** /
NL_ARGMAX        9                     /** max value of "digit" in calls to the
                                       NLS printf() and scanf() ** /
NL_LANGMAX       14                    /** max # of bytes in a LANG name ** /
NL_MSGMAX        32767                 /** max message number ** /
NL_NMAX          1                     /** max # of bytes in N-to-1 mapping
                                       characters ** /
NL_SETMAX        255                   /** max set number ** /
NL_TEXTMAX       255                   /** max # of bytes in a message string ** /
NZERO            20                    /** default process priority ** /
OPEN_MAX         20                    /** max # of files a process can have
                                       open ** /
PASS_MAX         8                     /** max # of characters in a password ** /
PATH_MAX         1024                  /** max # of characters in a path name ** /
PID_MAX          30000                 /** max value for a process ID ** /

PIPE_BUF         5120                  /** max # bytes atomic in write to a pipe ** /
PIPE_MAX         5120                  /** max # bytes written to a pipe
                                       in a write ** /
SCHAR_MAX        127                   /** max value of a "signed char" ** /
SCHAR_MIN        (-128)                /** min value of a "signed char" ** /
SHRT_MAX         32767                 /** max value of a "short int" ** /
SHRT_MIN         (-32768)              /** min value of a "short int" ** /
STD_BLK          1024                  /** # bytes in a physical I/O block ** /
SYS_NMLN         257                   /** 4.0 size of utsname elements ** /
                                       /** also defined in sys/utsname.h ** /
SYSPID_MAX       1                     /** max pid of system processes ** /
TMP_MAX          17576                 /** max # of unique names generated
                                       by tmpnam ** /
UCHAR_MAX        255                   /** max value of an "unsigned char" ** /
UID_MAX          60000                 /** max value for a user or group ID ** /
UINT_MAX         4294967295            /** max value of an "unsigned int" ** /
ULONG_MAX        4294967295            /** max value of an "unsigned long int" ** /
USHRT_MAX        65535                 /** max value of an "unsigned short int" ** /
USI_MAX          4294967295            /** max decimal value of an "unsigned" ** /
WORD_BIT         32                    /** # of bits in a "word" or "int" ** /

The following POSIX definitions are the most restrictive values to be used by a POSIX conformance application. Conforming implementations shall provide values at least this large.
_POSIX_ARG_MAX         4096  /** max length of arguments to exec ** /
_POSIX_CHILD_MAX       6     /** max # of processes per user ID ** /
_POSIX_LINK_MAX        8     /** max # of links to a single file ** /
_POSIX_MAX_CANON       255   /** max # of bytes in a line of input ** /
_POSIX_MAX_INPUT       255   /** max # of bytes in terminal
                             input queue ** /
_POSIX_NAME_MAX        14    /** # of bytes in a filename ** /
_POSIX_NGROUPS_MAX      0    /** max # of groups in a process ** /
_POSIX_OPEN_MAX        16    /** max # of files a process can have open ** /
_POSIX_PATH_MAX        255   /** max # of characters in a pathname ** /
_POSIX_PIPE_BUF        512   /** max # of bytes atomic in write
                             to a pipe ** /