- Declaración y definición de variables
- Contexto, ámbito y vida útil de las variables
- Inicialización
- Variables estáticas
- Variables constantes
- Variables de entrada
- Variables externas
Declaración y definición de variables
Una variable es una celda de memoria con nombre para almacenar los datos de un tipo específico. Para que el programa pueda manejar una variable, el programador debe declararla y/o definirla en el código fuente. En el caso general, los términos 'declaración' y 'definición' significan cosas distintas en relación con los elementos del programa, mientras que prácticamente siempre coinciden para las variables. Estos entresijos se abordarán cuando descubramos las funciones, las clases y las variables especiales (externas). Aquí vamos a utilizar ambos términos indistintamente, junto con el de 'descripción' como generalizador.
Podría darse por sentado que una declaración contiene una descripción de un elemento del programa con todos los atributos necesarios para su uso en el programa. La definición, sin embargo, contiene la implementación específica de este elemento, que se corresponde con la declaración.
Las declaraciones permiten al compilador interconectar todos los elementos del programa. A partir de las definiciones, el compilador genera un código ejecutable.
En el caso de las variables, su declaración actúa prácticamente siempre como su definición, ya que garantiza la asignación de memoria y la interpretación de su contenido de acuerdo con sus tipos (esto es exactamente una implementación de una variable). La única excepción es la declaración de variables con la palabra 'extern' (para obtener más detalles, véase la sección Variables externas).
Sólo a partir de la descripción de una variable puede utilizar sentencias especiales para introducir valores en ella, leerlos y hacer referencia al nombre de la variable para moverla de una parte del programa a otra.
En el caso más sencillo, una sentencia que describe una variable aparece de la siguiente manera:
type name; |
En este caso, name debe cumplir los requisitos de construir identificadores. Como type, puede especificar cualquiera de los tipos incorporados que hemos visto en la sección anterior, o algunos otros tipos personalizados; un poco más adelante veremos cómo crearlos. Por ejemplo, la variable entera i se declara de la siguiente manera:
int i; |
Si es necesario, puede describir simultáneamente varias variables del mismo tipo. En este caso, sus nombres se especifican en la sentencia, separados por comas.
int i, j, k; |
Un factor importante es el lugar del programa en el que se encuentra la sentencia que contiene la descripción de la variable. Esto afecta al tiempo de vida de la variable y a su accesibilidad desde distintas partes del programa.