Curso de C++ (Página 6)

pagina005d Principal pagina006e

CAPITULO 6 Declaración de variables

Una característica del C es la necesidad de la declaración de las variables que se usarán en el programa. Aunque esto resulta chocante para los que se aproximan al C desde otros lenguajes de programación, es en realidad una característica muy importante y útil de C, ya que ayuda a conseguir códigos más compactos y eficaces, y contribuye a facilitar la depuración y la detección y corrección de errores.

Cómo se declaran las variables

En realidad ya hemos visto la mecánica de la declaración de variables, al mostrar la sintaxis de cada tipo en el capítulo 2.

El sistema es siempre el mismo, primero se especifica el tipo y a continuación una lista de variables.

En realidad, la declaración de variables puede considerarse como una sentencia. Desde este punto de vista, la declaración terminará con un ";". Sintaxis:

<tipo> <lista de variables>;

Existe una particularidad relacionada con el punto en que se declaren las variables. Veremos este tema más en detalle cuando estudiemos el capítulo del ámbito, pero adelantaremos algo aquí.

Las variables declaradas dentro de una función sólo serán accesibles desde el interior de esa función, y se conocen como variables locales de la función. Las variables declaradas fuera de las funciones, serán accesibles desde todas las funciones, y son conocidas como variables globales.

También es posible inicializar las variables dentro de la misma declaración. Por ejemplo:

int a = 1234;
bool seguir = true, encontrado;

Declararía las variables "a", "seguir" y "encontrado"; y además iniciaría los valores de "a" y "seguir" a 1234 y "true", respectivamente.

En C, contrariamente a lo que sucede con otros lenguajes de programación, las variables no inicializadas tienen un valor indeterminado, contienen lo que normalmente se denomina "basura", también en esto hay excepciones como veremos más adelante.

Ámbito de las variables:

Dependiendo de dónde se declaren las variables, podrán o no ser accesibles desde distintas partes del programa.

Las variables declaradas dentro de una función, y recuerda que "main" también es una función, sólo serán accesibles desde esa función. Diremos que esas variables son variables locales o de ámbito local de esa función.

Las variables declaradas fuera de las funciones, normalmente antes de definir las funciones, en la zona donde se declaran los prototipos, serán accesibles desde todas las funciones. Diremos que esas variables serán globales o de ámbito global.

Ejemplo:

#include <iostream.h>

int EnteroGlobal; // Declaración de una variable global

int Funcion1(int a); // Declaración de un prototipo

int main() {
   int EnteroLocal;  // Declaración de una variable local de main

   EnteroLocal = Funcion1(10); // Acceso a una variable local
   EnteroGlobal = Funcion1(EnteroLocal); // Acceso a una valiable global

   return 0;
}

int Funcion1(int a) 
{
   char CaracterLocal; // Variable local de funcion1
   // Desde aquí podemos acceder a EnteroGlobal, 
   // y también a CaracterLocal 
   // pero no a EnteroLocal
   if(EnteroGlobal != 0)   
      return a/EnteroGlobal;
   else
      return 0;
}

pagina005d Principal pagina006e