Contenido del Curso
Fundamentos de C
Fundamentos de C
Sizeof
Tamaño de Datos
La función sizeof()
es un elemento básico en la programación en C. Ayuda a determinar el tamaño (en bytes) del objeto o tipo especificado.
Por ejemplo, veamos cuántos bytes ocupa el tipo de dato int
:
main
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); return 0; }
El tipo de dato int
ocupa 4 bytes.
Nota
Ten en cuenta que diferentes compiladores podrían asignar tamaños de bytes variables para el mismo tipo de dato.
Bits
Un bit es la unidad más básica de datos que utiliza una computadora. Cada byte consta de ocho bits.
Se decidió colectivamente por los ingenieros equiparar un byte a 8 bits porque esta configuración representa convenientemente números decimales.
Probablemente hayas oído hablar del sistema de numeración binario, que forma la base de las operaciones informáticas.
En esencia, el objetivo es representar valores numéricos que usamos en nuestra vida diaria usando combinaciones de ceros y unos. Cualquier número puede ser representado como una combinación de potencias de dos.
Por ejemplo, el número 7 puede ser representado como "111", y aquí está el desglose:
Los valores 0 o 1 no tienen significado matemático inherente; simplemente indican el estado de un bit.
- 0 – el bit está inactivo;
- 1 – el bit está activo.
El número 113, en binario, aparece como "01110001":
Tipos de Datos
¿Qué distingue a los diferentes tipos de datos? – ¡Su tamaño en bytes!
Main
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); printf("Size of char type: %d bytes\n", sizeof(char)); printf("Size of double type: %d bytes\n", sizeof(double)); // double is like float, but better return 0; }
Puedes utilizar la función sizeof()
en un arreglo para determinar su tamaño:
main
#include <stdio.h> int main() { int intArray[10]; printf("Size of int array: %d bytes\n", sizeof(intArray)); return 0; }
Un arreglo con 10 elementos enteros ocupa 40 bytes, lo que significa que cada elemento individual consume 4 bytes. Si divides el tamaño total del arreglo por el tamaño de uno de sus elementos, determinarás la cantidad de elementos del arreglo:
main
#include <stdio.h> int main() { int data[] = { 4,8,1,5,0,123,66,11, 64,2,7,78,-0,34,23,545, 98,890,65,32,412,6,5465, 87859,656534,324,324,456, 356,341,5654, 534,756,12 }; int sizeOfArray = sizeof(data) / sizeof(int); // or sizeof(data) / sizeof(data[0]); printf("Elements in an array: %d\n", sizeOfArray); return 0; }
¡Gracias por tus comentarios!