Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Keywords sizeof(), auto y typedef | Variables y Tipos de Datos
Introducción a C++
course content

Contenido del Curso

Introducción a C++

Introducción a C++

1. Para Comenzar
2. Variables y Tipos de Datos
3. Introducción a los Operadores
4. Introducción al Flujo de Programas
5. Introducción a las Funciones

bookKeywords sizeof(), auto y typedef

El tamaño de una variable es la cantidad de memoria reservada por el compilador. El compilador reserva un número específico de bytes de la memoria de tu ordenador, basándose en el tipo de datos que estés utilizando. Puedes utilizar la función sizeof() para averiguar el tamaño de una variable o tipo de datos en bytes. Por ejemplo:

cpp

main

copy
12345678910
#include <iostream> int main() { int myVar1; char myVar2; std::cout << "Size of int: " << sizeof(myVar1) << std::endl; std::cout << "Size of char: " << sizeof(myVar2) << std::endl; }

C++ permite seleccionar un tipo con un tamaño de bit preciso, como int8_t, uint8_t, int16_t, uint16_t, etc. Para utilizar estos tipos de datos, deberá incluir el fichero de cabecera <cstdint>.

Además, podemos forzar al compilador a determinar el tipo de variable por sí mismo utilizando la keyword auto.

cpp

main

copy
1234567891011
#include <iostream> int main() { auto myVar = 64.565; std::cout << "Value of myVar : " << myVar << std::endl; // double type takes 8 bytes std::cout << "Size of myVar : " << sizeof(myVar) << std::endl; }

C++ también permite renombrar los tipos de datos existentes. Para esto se utiliza typedef:

cpp

main

copy
1234567891011121314
#include <iostream> int main() { //change name of double type to MY_NEW_TYPE typedef double MY_NEW_TYPE; MY_NEW_TYPE myVar = 64.565; std::cout << "Value of myVar: " << myVar << std::endl; // double type takes 8 bytes std::cout << "Size of myVar : " << sizeof(myVar) << std::endl; }

Al compilar, la línea typedef indica al compilador que MY_NEW_TYPE es sólo un tipo double.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 6
some-alt