En el lenguaje C, la gestión de la memoria y la organización de los datos son pilares fundamentales. Un programa de C consta de varias entidades, como variables, funciones, tipos y espacios de nombres, y cada una de estas entidades debe declararse para que puedan usarse. El lenguaje C obliga a declarar una variable antes de ser usada; esto significa que simplemente se indica que la variable existe, reservando espacio en memoria para ella.
Declaración e inicialización de variables
Lo único que necesita conocer un compilador de C para crear una variable es el tipo al que pertenece y el nombre que se le quiere dar. La declaración de variables en C debe hacerse al principio del programa o dentro del bloque donde se necesiten. Al declarar una variable, su contenido no está definido en general, ya que puede contener lo que normalmente se denomina "basura". Por tanto, es preciso dar valores a las variables antes de utilizarlas, proceso conocido como inicialización.
Una declaración especifica un nombre único para la entidad, junto con información sobre su tipo y otras características. Se pueden declarar variables de forma sencilla o inicializarlas en la misma línea:
- Declaración simple: int edad;
- Declaración con inicialización: int i = 1;
Es recomendable elegir siempre el tipo de variable más sencillo posible, considerando que el grado de sencillez viene definido por la memoria requerida. C ofrece diversos tipos de datos, tales como:
| Tipo | Descripción |
|---|---|
| int | Enteros básicos. |
| float | Números decimales (precisión simple). |
| double | Números decimales (mayor precisión). |
| char | Caracteres individuales o vectores para cadenas. |
Ámbito de las variables: Locales y Globales
El nombre introducido por una declaración es válido dentro del ámbito en el que se produce. Podemos distinguir principalmente dos tipos:
Lea también: IVA 21% Excel
- Variables locales: Aquellas declaradas dentro de una función (como main()) o un bloque. Son invisibles para otros subprogramas y se destruyen al terminar el bloque.
- Variables globales: Aquellas que se declaran fuera de toda función. Son accesibles desde distintas partes del programa, aunque su uso inadvertido puede suponer un riesgo de corrupción de información.
Funciones y paso de parámetros
Las funciones en C permiten modularizar el código. En ocasiones, la cantidad de parámetros que se puede colocar en su llamado puede variar. Para gestionar esto, el lenguaje permite:
- Sobrecarga de funciones: Definir varias funciones con el mismo nombre pero diferente cantidad o tipo de parámetros.
- Valores por defecto: Asignar valores predeterminados a los parámetros en el prototipo de la función.
- Parámetros variables: Utilizar una lista de parámetros reemplazada por tres puntos (...), manejando la pila del proceso directamente mediante macros como va_list, va_start, va_arg y va_end de la biblioteca stdarg.h.
Cuando se llama a una función, los argumentos se toman de derecha a izquierda y se apilan en el "Stack" o Pila del proceso. Es vital recordar que, para funciones con un número variable de parámetros, los parámetros fijos deben proporcionar la información necesaria (como los códigos de formato en printf o scanf) para que el programa sepa cómo interpretarlos.
Lea también: Guía IVA reducido
Lea también: ¿Cómo localizar tus XML del SAT?
