Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Sizeof | Datos
Fundamentos de C
course content

Contenido del Curso

Fundamentos de C

Fundamentos de C

1. Introducción
2. Datos
3. Operadores
4. Declaraciones de Control
5. Funciones
6. Indicadores

bookSizeof

Tamaño de los Datos

La función sizeof() es un elemento básico en la programación en C. Ayuda a determinar el tamaño (en bytes) de un objeto o tipo especificado.

Por ejemplo, veamos cuántos bytes ocupa el tipo de dato int:

c

main

copy
12345678
#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 pueden asignar tamaños de byte variables para el mismo tipo de datos.

Bits

Un bit es la unidad más básica de datos que utiliza un ordenador. Cada byte consta de ocho bits.

Los ingenieros decidieron colectivamente equiparar un byte a 8 bits porque esta configuración representa convenientemente números decimales.

Es probable que hayas oído hablar del sistema numérico binario, que constituye la base de las operaciones informáticas.

En esencia, se trata de representar valores numéricos que utilizamos en nuestra vida cotidiana mediante combinaciones de ceros y unos. Cualquier número puede representarse como una combinación de potencias de dos.

Por ejemplo, el número 7 puede representarse como "111", y he aquí el desglose:

Los valores 0 ó 1 no tienen significado matemático, sólo 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 distintos tipos de datos? – Su tamaño en bytes.

c

Main

copy
123456789101112
#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; }

Puede utilizar la función sizeof() en una array para determinar su tamaño:

c

main

copy
12345678910
#include <stdio.h> int main() { int intArray[10]; printf("Size of int array: %d bytes\n", sizeof(intArray)); return 0; }

Una array con 10 elementos enteros ocupa 40 bytes, lo que significa que cada elemento individual consume 4 bytes. Si divides el tamaño total de la array por el tamaño de uno de sus elementos, determinarás el número de elementos de la array:

c

main

copy
1234567891011121314151617
#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; }
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

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