Una variable es un nombre dado a una ubicación de memoria, y debe declararse antes de usarse. En C, todas las variables se declaran al inicio del programa. En C ++, las variables se pueden declarar, en cualquier momento antes de que se usen en las instrucciones.
Las variables se clasifican en variables «locales» y «globales». Aquí la principal diferencia entre la variable local y la global es que una variable local se declara dentro de un bloque de funciones. Por el contrario, la variable global se declara fuera de las funciones del programa.
Solo se puede acceder a las variables locales mediante las declaraciones escritas dentro de una función en la que se declaran las variables locales. Son seguras en el sentido de que ninguna otra función del mismo programa puede acceder a ellas.
Una variable global se declara fuera de todas las funciones presentes en un programa. A diferencia de las variables locales, cualquier función presente en un programa puede acceder a la variable global. Las variables globales no son muy confiables ya que su valor puede ser cambiado por cualquier función presente en el programa.
Las variables locales se denominan «locales» porque solo son conocidas por las declaraciones escritas en una función dentro de la cual se declaran y no son conocidas por ninguna otra función presente fuera de ese bloque de funciones. En el caso de una variable global, son conocidas por todas y cada una de las funciones presentes en un programa; por lo tanto, se llaman globales.
Las variables globales conservan su valor hasta que el programa está en la fase de ejecución, ya que se almacenan en una ubicación fija decidida por el compilador.
Si una variable global y una local se declaran con el mismo nombre, todas las declaraciones de un bloque de código en el que se declara la variable local se referirán solo a una variable local y no causarán ningún efecto a una variable global.