Tipos de datos en C++

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;

Tipos de datos numéricos reales
El tipo de dato numérico real es un subconjunto finito de los números reales. Pueden ser positivos o negativos.
En C++ los tipos de datos numéricos reales son los siguientes:
Tipo de Dato
Descripción
Número de bytes típico
Rango
float
Real (Número en coma flotante)
4
Positivos: 3.4E-38 a 3.4E38
Negativos: -3.4E-38 a -3.4E38
double
Real doble(Número en coma flotante de doble precisión)
8
Positivos: 1.7E-308 a 1.7E308
Negativos: -1.7E-308 a -1.7E308
long double
Real doble largo
10
Positivos: 3.4E-4932 a 1.1E4932
Negativos: -3.4E-4932 a -1.1E4932

Tipo lógico
Los datos de este tipo sólo pueden contener dos valores: true ó false (verdadero ó falso).
Si se muestran como enteros, el valor true toma el valor 1 y false el valor 0.
Tipo de Dato
Descripción
Número de bytes típico
Rango
bool
Dato de tipo lógico
1
0, 1
Tipo carácter extendido
Este tipo se utiliza para representar caracteres UNICODE. Utiliza 2 bytes a diferencia del tipo char que solo utiliza 1.
Tipo de Dato
Descripción
Número de bytes típico
Rango
wchar_t
Carácter Unicode
2
0 a 65535


29 comentarios:

  1. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  2. hola, una pregunta, sabes que es y como se usa un dato de tipo unsigned int8 y unsigned int16??

    ResponderEliminar
    Respuestas
    1. supongo que es un entero sin signo de 8 o 16 bits/bytes

      Eliminar
  3. ME AYUDARON MUCHO TKM

    ResponderEliminar
  4. muitu bom japais eu meu
    goisto

    ResponderEliminar
  5. como hago si quiero ingresar la operacion a realizarse por ejemplo que tipo de dato pondre a d:
    cout<<"Ingrese operacion a realizar "<>d;
    por favor y desde ya los agradezco.

    ResponderEliminar
    Respuestas
    1. cout <<"Ingresa el numero1:\n";
      cin >> a;

      cout <<"Ingresa el numero2:\n;
      cin >> b;

      Eliminar
  6. Respuestas
    1. Me alegro de que te haya sido útil marita. Saludos

      Eliminar
  7. Muchas gracias, +10 lince v:

    ResponderEliminar
  8. Muchas gracias Me fe de gran utilidad... gracias por el aporte :D

    ResponderEliminar
  9. muy bien hecho gracias men :)

    ResponderEliminar
  10. Float double double unsignet plis

    ResponderEliminar
  11. hola que tal alguien sabe CREAR numeros aleatorios de 0 - 65,536 .
    otra cosa note que este tipo de dato se llama Tipo de Caracter Extendido como podria aplicar este problema en mi programa
    GRACIAS DE ANTEMANO...

    ResponderEliminar
  12. Puto el que esté ingeniería multimedia que vea esto :vvvvv

    ResponderEliminar