Restrictions on Data Types in VC ++, limits. h file content,

Source: Internet
Author: User

Restrictions on Data Types in VC ++, limits. h file content,

 

Limits. the H file specifies the maximum and minimum values of each data type specified by IDE in OS and the number of bytes occupied during compilation in the program source code, this helps programmers effectively control the display range value when selecting the appropriate data type during programming.

/***** Limits. h-implementation dependent values ** Copyright (c) Microsoft Corporation. all rights reserved. ** Purpose: * Contains defines for a number of implementation dependent values * which are commonly used in C programs. * [ANSI] ** [Public] *****/# pragma once # include <crtdefs. h> # ifndef _ INC_LIMITS # define CHAR_BIT 8/* number of bits in a char. int, shor, long, and Other types are in the standard. The default type is signed, However, the char type defaults to the unsigned type in the standard. */# Define SCHAR_MIN (-128) /* minimum signed char value */# define SCHAR_MAX 127/* maximum signed char value */# define UCHAR_MAX 0xff/* maximum unsigned char value */# ifndef _ limit # define CHAR_MIN SCHAR_MIN /* mimimum char value */# define CHAR_MAX SCHAR_MAX/* maximum char value */# else # define CHAR_MIN 0/**/# define CHAR_MAX UCHAR_MAX # endif/* _ CHAR_UNSIGNED */ # define MB_LEN_MAX 5/* max. # bytes in multibyte char */# define SHRT_MIN (-32768)/* minimum (signed) short value */# define SHRT_MAX 32767/* maximum (signed) short value */# define USHRT_MAX 0 xffff/* maximum unsigned short value */# define INT_MIN (-2147483647-1)/* minimum (signed) int value */# define INT_MAX 2147483647/* maximum (signed) int value */# define UINT_MAX 0 xffffffff/* maximum unsigned int value */# define LONG_MIN (-2147483647L-1) /* minimum (signed) long value */# define LONG_MAX 2147483647L/* maximum (signed) long value */# define ULONG_MAX 0 xffffffffUL/* maximum unsigned long value */# define LLONG_MAX values/* maximum signed long int value */# define LLONG_MIN (-limit-1) /* minimum signed long int value */# define ULLONG_MAX 0xffffffffffffffffui64/* maximum unsigned long int value */# define _ I8_MIN (-127i8-1) /* minimum signed 8 bit value */# define _ I8_MAX 127i8/* maximum signed 8 bit value */# define _ UI8_MAX 0xffui8/* maximum unsigned 8 bit value */# define _ i16_MIN (-32767i16-1) /* minimum signed 16 bit value */# define _ I16_MAX 32767i16/* maximum signed 16 bit value */# define _ UI16_MAX 0xffffui16/* maximum unsigned 16 bit value */# define _ i32_MIN (-2147483647i32-1) /* minimum signed 32 bit value */# define _ I32_MAX values/* maximum signed 32 bit value */# define _ UI32_MAX 0xffffffffui32/* maximum unsigned 32 bit value */* minimum signed 64 bit value */# define _ I64_MIN (-9223372042554775807i64-1) /* maximum signed 64 bit value */# define _ I64_MAX values/* maximum unsigned 64 bit value */# define _ UI64_MAX values # if _ INTEGRAL_MAX_BITS> = 128/* minimum signed 128 bit value */# define _ I128_MIN (-170141183460469231710987303715881095727i128-1) /* maximum signed 128 bit value */# define _ I128_MAX values/* maximum unsigned 128 bit value */# define _ UI128_MAX values # endif # ifndef SIZE_MAX # ifdef _ WIN64 # define SIZE_MAX _ UI64_MAX # else # define SIZE_MAX UINT_MAX # endif # if _ blank _/* While waiting to the C standard committee to finalize the demo-on RSIZE_MAX and rsize_t, * we define attributes as SIZE_MAX */# ifndef outputs # define inclusize_max # endif # ifdef _ POSIX _ # define _ POSIX_ARG_MAX 4096 # define _ POSIX_CHILD_MAX 6 # define _ POSIX_LINK_MAX 8 # define _ POSIX_MAX_CANON 255 # define _ POSIX_MAX_INPUT 255 # define _ POSIX_NAME_MAX 14 # define _ limit 0 # define _ POSIX_OPEN_MAX 16 # define _ POSIX_PATH_MAX 255 # define _ limit 512 # define _ limit 32767 # define _ POSIX_STREAM_MAX 8 # define _ POSIX_TZNAME_MAX 3 # define ARG_MAX 14500/* 16 k heap, minus overhead */# define LINK_MAX 1024 # define MAX_CANON _ pipeline # define MAX_INPUT _ POSIX_MAX_INPUT # define NAME_MAX 255 # define limit 16 # define OPEN_MAX 32 # define PATH_MAX 512 # define PIPE_BUF _ Pipeline # define SSIZE_MAX _ POSIX_SSIZE_MAX # define STREAM_MAX 20 # define TZNAME_MAX 10 # endif/* POSIX */# endif/* _ INC_LIMITS */



Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.