home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s038 / 10.ddi / 017.LIF / LIMITS.H < prev    next >
Encoding:
C/C++ Source or Header  |  1992-07-02  |  1.7 KB  |  46 lines

  1. /* limits.h - compiler limits
  2.  * $Version: 1.1 $
  3.  * Copyright (c) 1988-91 Intel Corporation, ALL RIGHTS RESERVED.
  4.  */
  5.  
  6. #ifndef _limitsh
  7. #define _limitsh
  8. /*lint -library */
  9.  
  10. #define CHAR_BIT    8            /* number of bits in a byte */
  11. #define UCHAR_MAX   255u        /* maximum value of an unsigned char */
  12. #define SCHAR_MAX   127            /* maximum value for a signed char */
  13. #define SCHAR_MIN   (-128)        /* minimum value of a signed char
  14.                        (-SCHAR_MAX - 1) */
  15.  
  16. #if '\xFF' < 0
  17. #define CHAR_MAX    SCHAR_MAX        /* maximum value of a 'plain' char */
  18. #define CHAR_MIN    SCHAR_MIN        /* minimum value of a 'plain' char */
  19. #else
  20. #define CHAR_MAX    UCHAR_MAX        /* maximum value of a 'plain' char */
  21. #define CHAR_MIN    0            /* minimum value of a 'plain' char */
  22. #endif
  23.  
  24. #define USHRT_MAX   65535u        /* maximum value of an unsigned short */
  25. #define SHRT_MAX    32767        /* maximum value of a short int */
  26. #define SHRT_MIN    (-32768)        /* minimum value of a short int
  27.                         (-SHRT_MAX - 1) */
  28. #define ULONG_MAX   4294967295u        /* maximum value of an unsigned long */
  29. #define LONG_MAX    2147483647l     /* maximum value of a long int */
  30. #define LONG_MIN    (-2147483647l-1)/* minimum value of a long int
  31.                         (-LONG_MAX - 1) */
  32.  
  33. #if _ARCHITECTURE_ <= 286
  34. #define INT_MAX     SHRT_MAX        /* maximum value of an int */
  35. #define INT_MIN     SHRT_MIN        /* minimum value of an int */
  36. #define UINT_MAX    USHRT_MAX        /* maximum value of an unsigned int */
  37. #else
  38. #define INT_MAX     LONG_MAX        /* maximum value of an int */
  39. #define INT_MIN     LONG_MIN        /* minimum value of an int */
  40. #define UINT_MAX    ULONG_MAX        /* maximum value of an unsigned int */
  41. #endif
  42.  
  43. #define MB_LEN_MAX     1
  44.  
  45. #endif /* _limitsh */
  46.