Bienvenidos sean a este post, hoy hablaremos sobre las variables.
Ya hemos visto que son los literalees en este post y hemos visto los tipos de datos en este otro post, las variables son lo contrario a los literales dado que podemos modificar su contenido y el valor que almacenara quedara definido por el tipo de dato que lo asociemos, pero podemos definir a una variable como:
Un espacio de memoria reservado para almacenar datos y estos puedan ser manipulados por el codigo
el tinchicus
Con esto comentado ahora podemos decir que los literales son inmutables porque no pueden cambiar su valor y las variables son mutables porque podemos cambiar su valor en cualquier momento, veamos como es la sintaxis para definirlas:
tipo_dato nombre = valor;
Primero pasaremos el tipo de dato seguido del nombre que lo identificara para finalmente pasarle un valor, aunque esto ultimo no es obligatorio, veamos algunos ejemplos de como definir variables:
int numero;
int valor = 10;
float valor1 = 14;
float valor2 = 2.5;
float pi = 3.14;
La primera variable simplemente reserva el espacio en memoria pero no contiene ningun valor, mas adelante podemos asignarle uno, en la siguiente linea definimos otra y si le asignamos un valor, las siguientes tres lineas definen tres variables con sus respectivos valores pero el lenguaje nos permite definirlas de la siguiente manera:
float valor1 = 14, valor2 = 2.5, pi = 3.14;
Siempre que las variables sean del mismo tipo podemos definirlas con el nombre y un valor separados por comas, otro tema que tenemos con las variables son su alcance o scope, estas pueden ser:
- globales, son accedidas por todo el codigo
- locales, son accedidas en el bloque donde se definieron
Esto hace que tengan sus propias caracteristicas:
- Las locales desaparecen cuando se termina el bloque donde se definieron
- Las globales nos permiten compartir informacion en todas las funciones y bloques
- Las globales desaparecen cuando termina el programa
- Las locales son mas rapidas que las globales
Nota: Las globales las comentamos de esta forma aunque mas adelante veremos que son un poco mas que esto pero no nos adelantemos y con todo lo hablado hasta ahora consideren a global como dijimos.
Antes de ver un ejemplo debemos comentar que los nombres validos son solo aquellos con letras y numeros pero siempre deben empezar con letras, no se puede usar caracteres especiales para los nombres aunque hay algunas excepciones, les paso un par de nombres validos:
valor
lotus123
nombre_01
Y aqui algunos ejemplos de nombres no validos:
123lotus
año
734
nombre%01
Con esto tenemos todo lo basico sobre las variables pero para entenderlo vamos a crear un nuevo ejemplo donde pondremos algunos de estos conceptos en practica, para ello crearemos un nuevo archivo que llamaremos variable.c y le agregaremos el siguiente codigo:
variable.c
#include <stdio.h>
int total = 0;
int Sumar(int a, int b)
{
return a + b;
}
int main()
{
total=Sumar(2, 3);
printf("Total: %i\n", total);
return 0;
}
Aqui primero definiremos una variable llamada total, como la definimos por fuera de todos los bloques se convierte en global y podremos acceder a ella desde cualquier parte, despues tenemos una funcion llamada Sumar que recibira dos valores y devolvera la suma de los valores recibidos, despues en el main asignaremos el resultado devuelto de Sumar a la variable total y esta la mostraremos en pantalla, compilemos y veamos su salida:
tinchicus@dbn001vrt:~/lenguajes/C$ ./prog/variable
Total: 5
tinchicus@dbn001vrt:~/lenguajes/C$
Ahora tomaremos este codigo y lo modificaremos de la siguiente manera:
variable.c
#include <stdio.h>
int total = 0;
void Sumar(int a, int b)
{
int total = a + b;
printf("Total funcion: %i\n", total);
}
int main()
{
Sumar(2,3);
printf("Total Global: %i\n", total);
return 0;
}
Aqui hicimos dos pequeñas modificaciones, la primera fue en la funcion Sumar donde la pasamos de int a void para que no devuelva ningun valor, en ella definiremos una nueva variable que se llamara total y le asignaremos la suma de los dos valores recibidos, para finalmente mostrar el valor indicando que es el total de la funcion, en el main haremos el otro cambio donde primero llamaremos a la funcion y luego mostraremos el valor de total pero global y lo indicaremos para diferenciarlo, compilemos y veamos como es su salida:
tinchicus@dbn001vrt:~/lenguajes/C$ ./prog/variable
Total funcion: 5
Total Global: 0
tinchicus@dbn001vrt:~/lenguajes/C$
Como podran ver tenemos dos variables llamada total pero una es local de la funcion y la otra sigue siendo la global, y cuando trabajamos sobre la local no afecto a la global porque esta solamente tiene ese alcance, por esta razon mayoritariamente encontraran algunas variables globales pero para trabajar se usaran las locales para no solamente liberar memoria mas rapido sino ademas para trabajar mas rapido.
En resumen, hoy hemos visto nuestro primer vistazo a las variables, que son, para que sirven, como se definen, algunas caracteristicas de las mismas, asi como un par de ejemplos para ver como trabajan, espero les haya sido de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.


Donación
Es para mantenimento del sitio, gracias!
$1.50
