Tipos de Datos y Variables

Tipos de datos primitivos: int, float, double, char

Vamos a explorar los tipos de datos primitivos en C: int, float, double y char. Estos tipos de datos básicos son fundamentales para almacenar información de diferentes formas.

				
					#include <stdio.h>

int main() {
    // Declaración de un entero
    int numeroEntero = 42;
    
    // Declaración de un número de punto flotante
    float numeroFlotante = 3.14f;
    
    // Declaración de un número de punto flotante de doble precisión
    double numeroDoble = 3.1415926535;
    
    // Declaración de un carácter
    char caracter = 'A';
    
    // Imprimir los valores
    printf("El valor del entero es: %d\n", numeroEntero);
    printf("El valor del flotante es: %.2f\n", numeroFlotante);
    printf("El valor del doble es: %.10f\n", numeroDoble);
    printf("El valor del carácter es: %c\n", caracter);
    
    return 0;
}

				
			

Explicación del Código

  1. Entero (int):

    • Se usa para almacenar números enteros sin decimales.
    • En el ejemplo, int numeroEntero = 42; declara una variable entera llamada numeroEntero y la inicializa con el valor 42.
    • Para imprimir un entero se usa el especificador de formato %d.
  2. Número de punto flotante (float):

    • Se usa para almacenar números con decimales de precisión simple.
    • En el ejemplo, float numeroFlotante = 3.14f; declara una variable de punto flotante llamada numeroFlotante y la inicializa con el valor 3.14.
    • El sufijo f indica que el número es un float.
    • Para imprimir un float, se usa el especificador de formato %.2f, donde .2 indica que queremos mostrar dos decimales.
  3. Número de punto flotante de doble precisión (double):

    • Similar a float, pero con el doble de precisión.
    • En el ejemplo, double numeroDoble = 3.1415926535; declara una variable de punto flotante de doble precisión llamada numeroDoble y la inicializa con el valor 3.1415926535.
    • Para imprimir un double, se usa el especificador de formato %.10f, donde .10 indica que queremos mostrar diez decimales.
  4. Carácter (char):

    • Se usa para almacenar un solo carácter.
    • En el ejemplo, char caracter = 'A'; declara una variable de carácter llamada caracter y la inicializa con el valor ‘A’.
    • Los caracteres se encierran entre comillas simples.
    • Para imprimir un char, se usa el especificador de formato %c.

Estos tipos de datos primitivos son esenciales para manejar información básica en cualquier programa en C. Son los bloques de construcción fundamentales que te permitirán crear estructuras de datos más complejas y realizar operaciones aritméticas, lógicas y de control en tu código.

Declaración e inicialización de variables

La declaración e inicialización de variables es fundamental en C para reservar espacio en la memoria y asignar valores a esas variables. Veamos cómo se realiza en C:

				
					#include <stdio.h>

int main() {
    // Declaración e inicialización de variables
    int edad = 30;
    float altura = 1.75f;
    char letra = 'A';
    
    // Declaración de variables sin inicializar
    int numero;
    float precio;
    char inicial;
    
    // Asignación de valores a variables declaradas previamente
    numero = 10;
    precio = 19.99f;
    inicial = 'C';
    
    // Imprimir los valores
    printf("Edad: %d\n", edad);
    printf("Altura: %.2f\n", altura);
    printf("Letra: %c\n", letra);
    
    printf("Número: %d\n", numero);
    printf("Precio: %.2f\n", precio);
    printf("Inicial: %c\n", inicial);
    
    return 0;
}

				
			

Explicación del Código

  1. Declaración e inicialización de variables:

    • En la línea int edad = 30;, declaramos e inicializamos una variable edad de tipo int con el valor 30.
    • Similarmente, float altura = 1.75f; declara e inicializa una variable altura de tipo float.
    • char letra = 'A'; declara e inicializa una variable letra de tipo char.
  2. Declaración de variables sin inicializar:

    • Se pueden declarar variables sin asignarles un valor inicial.
    • Por ejemplo, int numero;, float precio;, char inicial;.
  3. Asignación de valores:

    • Después de declarar las variables, se pueden asignar valores utilizando el operador de asignación =. Por ejemplo, numero = 10;, precio = 19.99f;, inicial = 'C';.
  4. Impresión de valores:

    • Utilizamos printf para imprimir los valores de las variables.
    • %d para enteros, %f para flotantes, %c para caracteres.

La declaración e inicialización de variables nos permite almacenar y manipular datos en nuestro programa en C. Recuerda que es una buena práctica inicializar todas las variables antes de usarlas para evitar comportamientos inesperados en tu programa.

Alcance y duración de las variables

El alcance y la duración de las variables se refieren a dónde y cuándo una variable es válida y accesible en un programa. En C, el alcance y la duración de las variables pueden variar dependiendo de dónde se declaren y cómo se declaran.

Alcance de las Variables

El alcance se refiere a la parte del programa donde una variable es visible y accesible.

  • Variables locales: Declaradas dentro de un bloque de código (como una función). Solo son accesibles dentro de ese bloque.
  • Variables globales: Declaradas fuera de cualquier función. Son accesibles desde cualquier parte del programa.

Duración de las Variables

La duración se refiere al tiempo durante el cual una variable existe en la memoria.

  • Variables locales: Se crean cuando se entra al bloque donde se declaran y se destruyen cuando se sale del bloque.
  • Variables globales: Se crean al inicio del programa y existen durante toda la ejecución del programa.

Ejemplo

				
					#include <stdio.h>

// Variable global
int variableGlobal = 10;

int main() {
    // Variable local a la función main
    int variableLocalMain = 20;
    
    // Imprimir variable global
    printf("Variable global dentro de main: %d\n", variableGlobal);
    
    {
        // Variable local a un bloque interno
        int variableLocalBloque = 30;
        printf("Variable local dentro de un bloque: %d\n", variableLocalBloque);
    }
    
    // La variableLocalBloque ya no es accesible aquí
    
    printf("Variable local dentro de main: %d\n", variableLocalMain);
    
    return 0;
}

void otraFuncion() {
    // No se puede acceder a variableLocalMain aquí
    // Solo se puede acceder a variableGlobal
    printf("Variable global dentro de otraFuncion: %d\n", variableGlobal);
}

				
			

Explicación del Código

  • variableGlobal es una variable global, por lo que es accesible desde cualquier parte del programa.
  • variableLocalMain es una variable local dentro de la función main(). Solo es accesible dentro de main().
  • variableLocalBloque es una variable local dentro de un bloque interno. Solo es accesible dentro de ese bloque.
  • Las variables locales se crean y destruyen cuando entramos y salimos de la función o bloque donde se declaran.
  • Las variables globales existen durante toda la ejecución del programa.

Es importante entender el alcance y la duración de las variables para escribir código más claro y evitar errores de acceso no deseado a variables.