Saltar al contenido principal

Tipos de datos

Los tipos de datos en C definen una variedad de formas en las que se pueden almacenar y manipular datos dentro del programa. Proporcionan información al compilador sobre cómo el programador pretende usar los datos, permitiendo al compilador reservar la cantidad adecuada de memoria y tomar decisiones de optimización.

Tipos de datos básicos

Son los datos más esenciales para almacenar información como números enteros, caracteres, numeros de punto flotante entre otros.

TipoDescripciónDeclaración
intRepresenta números enteros.int numero = 10;
floatNúmeros de punto flotante de precisión simple.float pi = 3.14f;
doubleNúmeros de punto flotante de precisión doble.double pi_preciso = 3.141592653589793;
charRepresenta un solo carácter.char letra = 'A';
_BoolValores booleanos (requiere stdbool.h).bool flag = true;

Modificadores de tipo

Permiten ajustar los tipos de datos básicos a las diferentes necesidades del código. Se utilizan cuando se necesita un rango específico de valores o tamaños.

ModificadorDescripciónDeclaración
shortEnteros más pequeños que int.short int pequeno_numero = 32767;
longEnteros más grandes que int.long int gran_numero = 2147483647L;
long longEnteros más grandes que long.long long int numero_muy_grande = 9223372036854775807LL;
unsignedNúmeros sin signo.unsigned int positivo = 100;

Tipos de datos derivados

Proporcionan estructuras más complejas contruuidas a partir de los tipos de datos básicos. Se utilizan para organizar y manipular datos de formas más avanzadas que con los tipos de datos solos.

TipoDescripciónDeclaración
ArraysColección de elementos del mismo tipo.int numeros[5] = {1, 2, 3, 4, 5};
PunterosAlmacenan direcciones de memoria.int x = 10; int *puntero = &x;
EstructurasAgrupación de variables de diferentes tipos.struct Persona { char nombre[50]; int edad; } persona1;
UnionesComo estructuras, pero sólo un miembro a la vez.union Ejemplo { int i; double d; };

Tipos de datos definidos por el usuario

Permiten a los programadores crear sus propias estructuras de datos a partir de los tipos existentes. Facilitan la escritura de código legible y que el diseño de estructuras de datos se ajuste a las necesidades del programa

TipoDescripciónDeclaración
typedefCrea un alias para un tipo existente.typedef unsigned long ulong; ulong numero = 5000;
EnumeracionesConjunto de valores enteros representados por símbolos.enum dias {LUN, MAR, MIE, JUE, VIE, SAB, DOM};