Los tipos de datos en C++ se clasifican en primitivos y derivados.

Los tipos de datos primitivos son los que están definidos dentro del lenguaje.

Los tipos de datos derivados se forman a partir de los tipos primitivos.

En este tema veremos los tipos primitivos y en temas siguientes estudiaremos los tipos derivados.

Los tipos de datos primitivos en C++ son: numéricos enteros, numéricos reales, tipo lógico y tipo carácter ampliado.

Tipos de datos C++ numéricos enteros
El tipo de dato numérico entero es un subconjunto finito de los números enteros del mundo real. Pueden ser positivos o negativos.
En C++ los tipos de datos numéricos enteros son los siguientes:
Tipo de Dato
Descripción
Número de bytes típico
Rango
short
Entero corto
2
-32768 a 32767
int
Entero
4
-2147483648 a +2147483647
long
Entero largo
4
-2147483648 a +2147483647
char
Carácter
1
-128 a 127
Con los tipos enteros pueden utilizarse los calificadores signed y unsigned. Estos calificadores indican si el número tiene signo o no. Si se usan solos, sin indicar el tipo de dato se asume int.
Por ejemplo, las siguientes declaraciones son equivalentes:
unsigned int x;             equivale a:        unsigned x;
Usando estos calificadores podemos tener los siguientes tipos enteros:
Tipo de Dato
Descripción
Número de bytes típico
Rango
signed short
Entero corto
2
-32768 a 32767
unsigned short
Entero corto sin signo
2
0 a 65535
signed int
Entero
4
-2147483648 a +2147483647
unsigned int
Entero sin signo
4
0 a 4294967295
signed long
Entero largo
4
-2147483648 a +2147483647
unsigned long
Entero largo sin signo
4
0 a 4294967295
signed char
Carácter
1
-128 a 127
unsigned char
Carácter sin signo
1
0 a 255
Podemos ver que los datos enteros de tipo signed son equivalentes a los enteros sin utilizar el calificador:
signed int a;     es equivalente a escribir      int a;