home *** CD-ROM | disk | FTP | other *** search
/ Team Palmtops 7 / Palmtops_numero07.iso / WinCE / SDKWindowsCE / AutoPC / apcsdk10.exe / data1.cab / Emulation_Include_Files / limits.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-05-13  |  3.8 KB  |  109 lines

  1. //+---------------------------------------------------------------------------
  2. //
  3. //  Microsoft Windows
  4. //  Copyright (C) Microsoft Corporation, 1992-1997. All rights reserved.
  5. //
  6. //  File:        limits.h
  7. //
  8. //    Purpose:
  9. //    Contains defines for a number of implementation dependent values
  10. //    which are commonly used in C programs.
  11. //    [ANSI]
  12. //
  13. //----------------------------------------------------------------------------
  14.  
  15. #ifndef _INC_LIMITS
  16. #define _INC_LIMITS
  17.  
  18. #define CHAR_BIT      8        /* number of bits in a char */
  19. #define SCHAR_MIN    (-128)        /* minimum signed char value */
  20. #define SCHAR_MAX      127        /* maximum signed char value */
  21. #define UCHAR_MAX      0xff        /* maximum unsigned char value */
  22.  
  23. #ifndef _CHAR_UNSIGNED
  24. #define CHAR_MIN    SCHAR_MIN    /* mimimum char value */
  25. #define CHAR_MAX    SCHAR_MAX    /* maximum char value */
  26. #else
  27. #define CHAR_MIN      0
  28. #define CHAR_MAX    UCHAR_MAX
  29. #endif    /* _CHAR_UNSIGNED */
  30.  
  31. #define    MB_LEN_MAX      2        /* max. # bytes in multibyte char */
  32. #define SHRT_MIN    (-32768)    /* minimum (signed) short value */
  33. #define SHRT_MAX      32767     /* maximum (signed) short value */
  34. #define USHRT_MAX      0xffff    /* maximum unsigned short value */
  35. #define INT_MIN     (-2147483647 - 1) /* minimum (signed) int value */
  36. #define INT_MAX       2147483647    /* maximum (signed) int value */
  37. #define UINT_MAX      0xffffffff    /* maximum unsigned int value */
  38. #define LONG_MIN    (-2147483647L - 1) /* minimum (signed) long value */
  39. #define LONG_MAX      2147483647L    /* maximum (signed) long value */
  40. #define ULONG_MAX      0xffffffffUL    /* maximum unsigned long value */
  41.  
  42. #if    _INTEGRAL_MAX_BITS >= 8
  43. #define _I8_MIN     (-127i8 - 1)    /* minimum signed 8 bit value */
  44. #define _I8_MAX       127i8        /* maximum signed 8 bit value */
  45. #define _UI8_MAX      0xffui8    /* maximum unsigned 8 bit value */
  46. #endif
  47.  
  48. #if    _INTEGRAL_MAX_BITS >= 16
  49. #define _I16_MIN    (-32767i16 - 1)    /* minimum signed 16 bit value */
  50. #define _I16_MAX      32767i16    /* maximum signed 16 bit value */
  51. #define _UI16_MAX      0xffffui16    /* maximum unsigned 16 bit value */
  52. #endif
  53.  
  54. #if    _INTEGRAL_MAX_BITS >= 32
  55. #define _I32_MIN    (-2147483647i32 - 1) /* minimum signed 32 bit value */
  56. #define _I32_MAX      2147483647i32 /* maximum signed 32 bit value */
  57. #define _UI32_MAX      0xffffffffui32 /* maximum unsigned 32 bit value */
  58. #endif
  59.  
  60. #if    _INTEGRAL_MAX_BITS >= 64
  61. /* minimum signed 64 bit value */
  62. #define _I64_MIN    (-9223372036854775807i64 - 1)
  63. /* maximum signed 64 bit value */
  64. #define _I64_MAX      9223372036854775807i64
  65. /* maximum unsigned 64 bit value */
  66. #define _UI64_MAX      0xffffffffffffffffui64
  67. #endif
  68.  
  69. #if    _INTEGRAL_MAX_BITS >= 128
  70. /* minimum signed 128 bit value */
  71. #define _I128_MIN    (-170141183460469231731687303715884105727i128 - 1)
  72. /* maximum signed 128 bit value */
  73. #define _I128_MAX      170141183460469231731687303715884105727i128
  74. /* maximum unsigned 128 bit value */
  75. #define _UI128_MAX      0xffffffffffffffffffffffffffffffffui128
  76. #endif
  77.  
  78. #ifdef _POSIX_
  79.  
  80. #define _POSIX_ARG_MAX          4096
  81. #define _POSIX_CHILD_MAX        6
  82. #define _POSIX_LINK_MAX         8
  83. #define _POSIX_MAX_CANON        255
  84. #define _POSIX_MAX_INPUT        255
  85. #define _POSIX_NAME_MAX         14
  86. #define _POSIX_NGROUPS_MAX      0
  87. #define _POSIX_OPEN_MAX         16
  88. #define _POSIX_PATH_MAX         255
  89. #define _POSIX_PIPE_BUF         512
  90. #define _POSIX_SSIZE_MAX    32767
  91. #define _POSIX_STREAM_MAX    8
  92. #define _POSIX_TZNAME_MAX    3
  93.  
  94. #define ARG_MAX                 14500    /* 16k heap, minus overhead */
  95. #define MAX_CANON               _POSIX_MAX_CANON
  96. #define MAX_INPUT               _POSIX_MAX_INPUT
  97. #define NAME_MAX        255
  98. #define NGROUPS_MAX             16
  99. #define OPEN_MAX                32
  100. #define PATH_MAX                512
  101. #define PIPE_BUF                _POSIX_PIPE_BUF
  102. #define SSIZE_MAX        _POSIX_SSIZE_MAX
  103. #define STREAM_MAX        20
  104. #define TZNAME_MAX        10
  105.  
  106. #endif /* POSIX */
  107.  
  108. #endif    /* _INC_LIMITS */
  109.