Tipos de datos C ++

Al escribir el programa en cualquier idioma, debe usar varias variables para almacenar información diversa. Las variables no son más que ubicaciones de memoria reservadas para almacenar valores. Esto significa que cuando crea una variable, reserva algo de espacio en la memoria.
Puede almacenar información de varios tipos de datos como carácter, carácter ancho, entero, punto flotante, punto flotante doble, booleano, etc. Basado en el tipo de datos de una variable, el sistema operativo asigna memoria y decide qué se puede almacenar en la memoria reservada.

Tipos incorporados primitivos

C ++ ofrece al programador una gran variedad de tipos de datos integrados y definidos por el usuario. La siguiente tabla enumera siete tipos básicos de datos de C ++:
Type
Keyword
Boolean
bool
Character
char
Integer
int
Floating point
float
Double floating point
double
Valueless
void
Wide character
wchar_t

Varios de los tipos básicos se pueden modificar usando uno o más de estos modificadores de tipo:

  • ·         signed
  • ·         unsigned
  • ·         short
  • ·         long

La siguiente tabla muestra el tipo de variable, cuánta memoria se necesita para almacenar el valor en la memoria y cuál es el valor máximo y mínimo que se puede almacenar en dicho tipo de variables.
Type
Typical Bit Width
Typical Range
char
1byte
-127 to 127 or 0 to 255
unsigned char
1byte
0 to 255
signed char
1byte
-127 to 127
int
4bytes
-2147483648 to 2147483647
unsigned int
4bytes
0 to 4294967295
signed int
4bytes
-2147483648 to 2147483647
short int
2bytes
-32768 to 32767
unsigned short int
Range
0 to 65,535
signed short int
Range
-32768 to 32767
long int
4bytes
-2,147,483,648 to 2,147,483,647
signed long int
4bytes
same as long int
unsigned long int
4bytes
0 to 4,294,967,295
float
4bytes
+/- 3.4e +/- 38 (~7 digits)
double
8bytes
+/- 1.7e +/- 308 (~15 digits)
long double
8bytes
+/- 1.7e +/- 308 (~15 digits)
wchar_t
2 or 4 bytes
1 wide character


El tamaño de las variables puede ser diferente de las que se muestran en la tabla anterior, según el compilador y la computadora que esté utilizando.
A continuación se muestra el ejemplo, que producirá el tamaño correcto de varios tipos de datos en su computadora.

#include
using namespace std;

int main() {
   cout << "Size of char : " << sizeof(char) << endl;
   cout << "Size of int : " << sizeof(int) << endl;
   cout << "Size of short int : " << sizeof(short int) << endl;
   cout << "Size of long int : " << sizeof(long int) << endl;
   cout << "Size of float : " << sizeof(float) << endl;
   cout << "Size of double : " << sizeof(double) << endl;
   cout << "Size of wchar_t : " << sizeof(wchar_t) << endl;
  
   return 0;
}

Este ejemplo utiliza endl , que inserta un carácter de nueva línea después de cada línea y el operador << se usa para pasar múltiples valores a la pantalla. También estamos utilizando el operador sizeof () para obtener el tamaño de varios tipos de datos.
Cuando se compila y ejecuta el código anterior, produce el siguiente resultado, que puede variar de una máquina a otra:
Size of char : 1
Size of int : 4
Size of short int : 2
Size of long int : 4
Size of float : 4
Size of double : 8
Size of wchar_t : 4

Declaraciones de typedef

Puede crear un nuevo nombre para un tipo existente usando typedef . A continuación se muestra la sintaxis simple para definir un nuevo tipo usando typedef -
typedef type newname; 
Por ejemplo, lo siguiente le dice al compilador que pies es otro nombre para int -
typedef int feet;
Ahora, la siguiente declaración es perfectamente legal y crea una variable entera llamada distancia -
feet distance;

Tipos enumerados

Un tipo enumerado declara un nombre de tipo opcional y un conjunto de cero o más identificadores que se pueden usar como valores del tipo. Cada enumerador es una constante cuyo tipo es la enumeración.
Crear una enumeración requiere el uso de la palabra clave enum . La forma general de un tipo de enumeración es -
enum enum-name { list of names } var-list; 
Aquí, el nombre enum es el nombre de la enumeración. La lista de nombres está separada por comas.
Por ejemplo, el siguiente código define una enumeración de colores llamados colores y la variable c de tipo color. Finalmente, a c se le asigna el valor "azul".
enum color { red, green, blue } c;
c = blue;
De forma predeterminada, el valor del primer nombre es 0, el segundo nombre tiene el valor 1 y el tercero tiene el valor 2, y así sucesivamente. Pero puede dar un nombre, un valor específico agregando un inicializador. Por ejemplo, en la siguiente enumeración, verde tendrá el valor 5.
enum color { red, green = 5, blue };
Aquí, el azul tendrá un valor de 6 porque cada nombre será uno mayor que el que lo precede.

Comentarios