Introduciendo datos por teclado
Hasta el momento, el valor de las variables los hemos puesto nosotros mismos. Ahora veremos de qué forma hacer para que el propio usuario que utilice el programa dé valores a nuestras variables.
Para guardar valores dados por el usuario en una variable se utilizará la función scanf.
Vamos a ver un ejemplo en el que el usuario introduzca el número que quiera por teclado, y ese mismo número, lo mostraremos por pantalla:
Creamos la variable "num", indicamos al usuario a través de un mensaje por pantalla que introduzca un número... y ahora viene la nueva instrucción que analizaremos:
scanf( "%i", &num );
En el valor entre comillas escribiremos el "%" y la letra adecuada para cada tipo de dato, y luego, separado por una "," escribimos el nombre de la variable donde queremos que se guarde ese número, en este caso "num", y fijaos que delante tiene un "&". Es necesario ponerlo, aunque ahora no entendáis bien el por qué. Se entenderá cuando veamos los punteros unas lecciones más adelante.
Este programa lo único que hace es mostrar por pantalla ese número tecleado por el usuario.
Ahora bien, si lo que queremos es meter un carácter, ya no nos sirve esta función. Para ello, tendremos que hacer otro procedimiento. Se lleva a cabo con la función getche();
Veamos un ejemplo para introducir un carácter.
Lo primero que tenemos que hacer es introducir otro "include", en este caso: conio.h. ya que sin esta librería (que es de lo que se encargan los includes, de incluir librerías) el programa no funcionaría, porque la función getche(); está incluida en esa librería. Todo esto de funciones y librerías se entenderá posteriormente en siguientes lecciones.
Lo que cambia de este programa al anterior es que ahora para recoger el carácter tecleado por el usuario, se hace a través de una asignación, como veis en el código:
caracter = getche();
De esta forma se guarda en la variable "caracter" el valor introducido por el usuario.
Adjunto ambos programas:
Descargar IntroduciendoDatosPorTeclado.cpp
Descargar IntroduciendoDatosPorTeclado2.cpp
Y para acabar, un vídeo de cómo funcionan ambos programas: