Intervalos de tipo de datos
Para los compiladores de 32 bits y 64 bits, Microsoft Visual C++ reconoce los tipos que aparecen en la tabla siguiente.Observe que el siguiente tipo también tiene formularios sin signo:
int (unsignedint)
__int8 (unsigned__int8)
__int16 (unsigned__int16)
__int32 (unsigned__int32)
__int64 (unsigned__int64)
short (unsignedshort)
long (unsignedlong)
longlong (unsignedlonglong)
Nombre de tipo |
Bytes |
otros nombres |
intervalo de valores |
---|---|---|---|
Valor int. |
4 |
Signed |
–2.147.483.648 a 2.147.483.647 |
unsigned int |
4 |
Unsigned |
De 0 a 4.294.967.295 |
__int8 |
1 |
char |
–128 a 127 |
__int8 sin signo |
1 |
unsigned char |
De 0 a 255 |
__int16 |
2 |
fuera del, short int, int corto con signo |
–32.768 a 32.767 |
__int16 sin signo |
2 |
unsigned short, short int sin signo |
De 0 a 65.535 |
__int32 |
4 |
un int con signo, firmado, int |
–2.147.483.648 a 2.147.483.647 |
__int32 sin signo |
4 |
unsigned int, sin signo |
De 0 a 4.294.967.295 |
__int64 |
8 |
de largo, long longcon signo |
–9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 |
unsigned __int64 |
8 |
largo unsigned long |
De 0 a 18,446,744,073,709,551,615 |
bool |
1 |
nada |
false o true |
char |
1 |
nada |
– 128 a 127 de forma predeterminada 0 a 255 cuando se compila con /J |
signed char |
1 |
nada |
–128 a 127 |
unsigned char |
1 |
nada |
De 0 a 255 |
short |
2 |
short int, int corto con signo |
–32.768 a 32.767 |
unsigned short |
2 |
short int sin signo |
De 0 a 65.535 |
long |
4 |
int largo, int longcon signo |
–2.147.483.648 a 2.147.483.647 |
unsigned long |
4 |
int unsigned long |
De 0 a 4.294.967.295 |
de largo |
8 |
ninguno (solo equivalente a __int64) |
–9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 |
largo unsigned long |
8 |
ninguno (solo equivalente a unsigned __int64) |
De 0 a 18,446,744,073,709,551,615 |
enum |
varía |
nada |
Vea la sección Comentarios. |
float |
4 |
nada |
3.4E +/- 38 (7 dígitos) |
double |
8 |
nada |
1.7E +/- 308 (15 dígitos) |
doble largo |
igual que doble |
nada |
igual que doble |
wchar_t |
2 |
__wchar_t |
De 0 a 65.535 |
Una variable de __wchar_t indica un tipo de caracteres anchos o de carácter multibyte.de forma predeterminada wchar_t es typedef para unsignedshort.Utilice el prefijo de l antes de un carácter o una constante de cadena para notificar la constante de ancho-carácter-tipo.Al compilar con /Zc: wchar_t o /Za, el compilador puede distinguir entre unsignedshort y wchar_t para la sobrecarga de funciones.
Signed y unsigned son los modificadores que se pueden usar con cualquier tipo entero excepto bool.El tipo de char se comporta como signed char de forma predeterminada, pero puede especificar /J (opción del compilador) para crear comportarse como unsigned char de forma predeterminada.
Los tipos de int y de unsignedint tienen el tamaño de word del sistema: cuatro bytes.Sin embargo, el código portable no debe depender del tamaño de int.
Compatibilidad con las características de Microsoft C/C++ también para tipos enteros ordenados.Vea __int8, __int16, __int32, __int64 para obtener más información.Vea también límites enteros.
Vea tipos fundamentales para obtener más información sobre las restricciones de tamaño de cada tipo.
El intervalo de tipos de lista varía dependiendo del contexto del lenguaje y los marcadores especificados del compilador.En las enumeraciones de c y C++ no-CLR, las constantes de la enumeración y los valores de tipos enumerados se expresan en términos de intescrito.Las enumeraciones de C++ CLR se pueden admitir por un tipo especificado de escalar.El intervalo de una enumeración se define como valores menores y mayores que pueden almacenarse en los campos de bits el de menor y mayor de los enumeradores.Sin embargo, el compilador de C++ permitirá que cualquier valor dentro del intervalo del tipo de respaldo de la enumeración especifica (esto puede requerir una conversión).Para obtener más información, vea la Declaraciones de enumeración de C y a Declaraciones de enumeración de C++.