
En el lenguaje C, existen varios tipos de datos que se utilizan para almacenar diferentes tipos de valores. Los tipos de datos en C se dividen en cuatro categorías principales: tipos básicos, modificadores de tipos, tipos derivados y tipos definidos por el usuario.
1.Tipos de Datos Básicos
- int: Se usa para almacenar números enteros.
- float: Se usa para almacenar números con punto decimal (de precisión simple).
- double: Se usa para almacenar números con punto decimal (de doble precisión, o más precisión que `float`).
- char: Se usa para almacenar un solo carácter (letra, número o símbolo) y representa un valor ASCII.
-void: No representa ningún valor. Es usado en funciones que no devuelven un valor.
- Los modificadores se aplican a los tipos de datos básicos para ajustar el rango o tamaño de los datos. Los principales modificadores en C son:
- signed: Indica que el número puede ser positivo o negativo. `int` es signed por defecto.
- unsigned: Indica que el número solo será positivo, lo que permite ampliar el rango hacia valores más grandes positivos.
-short: Reduce el rango de valores que el tipo puede almacenar, pero ocupa menos memoria.
- long: Aumenta el rango de valores que el tipo puede almacenar (mayor que el tamaño estándar).
- Ejemplos:
- `short int`: Entero corto.
- `long int`: Entero largo.
- `unsigned int`: Entero sin signo.
- `long double`: Doble precisión larga.
3. Tipos Derivados
- **Arrays**: Conjunto de elementos del mismo tipo. Ejemplo: `int arr[10];` declara un arreglo de 10 enteros.
- Punteros: Almacenan la dirección de memoria de otro valor. Ejemplo: `int *ptr;` es un puntero a un entero.
- Estructuras (struct): Agrupan diferentes tipos de datos en una sola entidad. Ejemplo:
```c
struct Persona {
char nombre[50];
int edad;
};
```
- Uniones (union): Similar a las estructuras, pero todos los miembros comparten la misma posición de memoria, por lo que solo uno puede almacenar un valor a la vez.
- Funciones: En C, las funciones también se consideran tipos de datos, ya que se pueden almacenar y pasar como punteros.
4.Tipos Definidos por el Usuario
- typedef: Permite definir un nombre alternativo para un tipo de datos. Ejemplo:
```c
typedef int entero;
entero a = 5; // `entero` es un alias para `int`
```
- enum: Tipo enumerado que define un conjunto de constantes enteras. Ejemplo:
```c
enum Dias {Lunes, Martes, Miercoles, Jueves, Viernes};
```
Tamaños de los Tipos de Datos (Ejemplos Estándar)
- `char`: 1 byte (almacena valores entre -128 y 127 para signed char, o de 0 a 255 para unsigned char).
- `int`: 4 bytes (almacena valores entre -2,147,483,648 y 2,147,483,647).
- `float`: 4 bytes (almacena decimales de menor precisión).
- `double`: 8 bytes (almacena decimales de mayor precisión).
- `long double`: Generalmente 10 o 12 bytes, con mayor precisión en decimales.
Estos son los tipos básicos que el lenguaje C proporciona, permitiendo un control preciso del tamaño y rango de los datos en memoria.