Compartir a través de


Constantes de tipo de datos

Las constantes de tipo de datos son intervalos de valores dependientes de la implementación permitidos para los tipos de datos enteros y de punto flotante.

Constantes de tipo de datos entero

Estas constantes proporcionan los rangos de los tipos de datos enteros. Para usarlas, debe incluir el encabezado limits.h en el archivo de origen:

#include <limits.h>

Nota:

La opción de compilador /J cambia el tipo char predeterminado de signed char a unsigned char.

Constante Value Descripción
CHAR_BIT 8 Número de bits en char
SCHAR_MIN (-128) Mínimo valor signed char
SCHAR_MAX 127 Máximo valor signed char
UCHAR_MAX 255 (0xff) Máximo valor unsigned char
CHAR_MIN (-128) (0 si se usa la opción /J) Mínimo valor char
CHAR_MAX 127 (255 si se usa la opción /J) Máximo valor char
MB_LEN_MAX 5 Número máximo de bytes en un char multibyte
SHRT_MIN -32768 Mínimo valor signed short
SHRT_MAX 32767 Máximo valor signed short
USHRT_MAX 65535 (0xffff) Máximo valor unsigned short
INT_MIN (-2147483647 - 1) Mínimo valor signed int
INT_MAX 2147483647 Máximo valor signed int
UINT_MAX 4294967295 (0xffffffff) Máximo valor unsigned int
LONG_MIN (-2147483647L - 1) Mínimo valor signed long
LONG_MAX 2147483647L Máximo valor signed long
ULONG_MAX 4294967295UL (0xfffffffful) Máximo valor unsigned long
LLONG_MIN (-9223372036854775807LL - 1) Valor mínimo signed long long o __int64
LLONG_MAX 9223372036854775807LL Valor máximo signed long long o __int64
ULLONG_MAX 0xffffffffffffffffull Máximo valor unsigned long long
_I8_MIN (-127i8 - 1) Valor mínimo de 8 bits con signo
_I8_MAX 127i8 Valor máximo de 8 bits con signo
_UI8_MAX 0xffui8 Valor máximo de 8 bits sin signo
_I16_MIN (-32767i16 - 1) Valor mínimo de 16 bits con signo
_I16_MAX 32767i16 Valor máximo de 16 bits con signo
_UI16_MAX 0xffffui16 Valor máximo de 16 bits sin signo
_I32_MIN (-2147483647i32 - 1) Valor mínimo de 32 bits con signo
_I32_MAX 2147483647i32 Valor máximo de 32 bits con signo
_UI32_MAX 0xffffffffui32 Valor máximo de 32 bits sin signo
_I64_MIN (-9223372036854775807 - 1) Valor mínimo de 64 bits con signo
_I64_MAX 9223372036854775807 Valor máximo de 64 bits con signo
_UI64_MAX 0xffffffffffffffffui64 Valor máximo de 64 bits sin signo
_I128_MIN (-170141183460469231731687303715884105727i128 - 1) Valor mínimo de 128 bits con signo
_I128_MAX 170141183460469231731687303715884105727i128 Valor máximo de 128 bits con signo
_UI128_MAX 0xffffffffffffffffffffffffffffffffui128 Valor máximo de 128 bits sin signo
SIZE_MAX igual que _UI64_MAX si se define _WIN64 o UINT_MAX Tamaño máximo de entero nativo
RSIZE_MAX igual que (SIZE_MAX>> 1) Tamaño máximo de biblioteca segura de enteros

Constantes de tipo de punto flotante

Las constantes siguientes proporcionan el intervalo y otras características de los tipos de datos long double, double y float. Para usarlas, debe incluir el encabezado float.h en el archivo de origen:

#include <float.h>
Constante Value Descripción
DBL_DECIMAL_DIG 17 Número de dígitos decimales de precisión de redondeo
DBL_DIG 15 Número de dígitos decimales de precisión
DBL_EPSILON 2.2204460492503131e-016 Valor más pequeño, de modo que 1.0 + DBL_EPSILON != 1.0
DBL_HAS_SUBNORM 1 El tipo admite números no normales (denormales)
DBL_MANT_DIG 53 Número de bits en la mantisa
DBL_MAX 1.7976931348623158e+308 Valor máximo
DBL_MAX_10_EXP 308 Máximo exponente decimal
DBL_MAX_EXP 1024 Máximo exponente binario
DBL_MIN 2.2250738585072014e-308 Valor positivo normalizado mínimo
DBL_MIN_10_EXP (-307) Mínimo exponente decimal
DBL_MIN_EXP (-1021) Mínimo exponente binario
_DBL_RADIX 2 Base de exponente
DBL_TRUE_MIN 4.9406564584124654e-324 Valor no normal positivo mínimo
FLT_DECIMAL_DIG 9 Número de dígitos decimales de precisión de redondeo
FLT_DIG 6 Número de dígitos decimales de precisión
FLT_EPSILON 1.192092896e-07F Valor más pequeño, de modo que 1.0 + FLT_EPSILON != 1.0
FLT_HAS_SUBNORM 1 El tipo admite números no normales (denormales)
FLT_MANT_DIG 24 Número de bits en la mantisa
FLT_MAX 3.402823466e+38F Valor máximo
FLT_MAX_10_EXP 38 Máximo exponente decimal
FLT_MAX_EXP 128 Máximo exponente binario
FLT_MIN 1.175494351e-38F Valor positivo normalizado mínimo
FLT_MIN_10_EXP (-37) Mínimo exponente decimal
FLT_MIN_EXP (-125) Mínimo exponente binario
FLT_RADIX 2 Base de exponente
FLT_TRUE_MIN 1.401298464e-45F Valor no normal positivo mínimo
LDBL_DIG 15 Número de dígitos decimales de precisión
LDBL_EPSILON 2.2204460492503131e-016 Valor más pequeño, de modo que 1.0 + LDBL_EPSILON != 1.0
LDBL_HAS_SUBNORM 1 El tipo admite números no normales (denormales)
LDBL_MANT_DIG 53 Número de bits en la mantisa
LDBL_MAX 1.7976931348623158e+308 Valor máximo
LDBL_MAX_10_EXP 308 Máximo exponente decimal
LDBL_MAX_EXP 1024 Máximo exponente binario
LDBL_MIN 2.2250738585072014e-308 Valor positivo normalizado mínimo
LDBL_MIN_10_EXP (-307) Mínimo exponente decimal
LDBL_MIN_EXP (-1021) Mínimo exponente binario
_LDBL_RADIX 2 Base de exponente
LDBL_TRUE_MIN 4.9406564584124654e-324 Valor no normal positivo mínimo
DECIMAL_DIG igual que DBL_DECIMAL_DIG Dígitos decimales predeterminados (dobles) de precisión de redondeo

Consulte también

Constantes globales