función de captura en C++

Funcion De Captura En C



En el ámbito de los lenguajes de programación C y C++ se utilizan diferentes métodos naturales y bibliotecas. En este artículo, examinaremos de cerca el método getch() de C++. La función getch() se utiliza cuando deseamos leer una cadena de caracteres de nuestro teclado y no proyecta una salida en la pantalla. Aquí, exploraremos esta función getch() correctamente con la ayuda de ejemplos y pruebas válidos para su conocimiento. Este método se puede utilizar principalmente en escenarios basados ​​en consola (salida) en C++ para recibir información del usuario.

¿Qué es Getch() en C++?

En C++, la biblioteca denominada archivo de encabezado 'cstdio' se usa principalmente para la función getch(). Getch() también se define en el archivo “conio. h” archivo de encabezado que es específico del compilador y es una función no estándar porque no es completamente parte del estándar de la biblioteca C++. La abreviatura de getch es 'obtener carácter' y se utiliza para permanecer en la pantalla de salida por un tiempo hasta que el usuario pasa la entrada.

Desarrollaremos este concepto adecuadamente con la ayuda de ejemplos. Aquí aprenderemos sobre la sintaxis, el uso y el comportamiento del método getch() en C++ con la ayuda de escenarios adecuados.







Escenario 1: Cómo utilizar Getch() en una aplicación basada en menús

Analicemos la pequeña aplicación basada en menús para la cual enumeraremos diferentes opciones. Cada opción está diseñada para diferentes propósitos, como el menú de un restaurante. El fragmento de código de este ejemplo se adjunta a continuación:



#incluir
#incluir
#incluir
usando espacio de nombres enfermedad de transmisión sexual ;
En t principal ( ) {
    carbonizarse elección ;
enfermedad de transmisión sexual :: corte << 'Menú del restaurante: \norte ' ;
enfermedad de transmisión sexual :: corte << '1. Opción 1: Pizza \norte ' ;
enfermedad de transmisión sexual :: corte << '2. Opción 2: Hamburguesa \norte ' ;
enfermedad de transmisión sexual :: corte << '3. Opción 3: Pastel \norte ' ;
enfermedad de transmisión sexual :: corte << 'Ingrese su elección: ' ;
elección = conseguir ( ) ; // el usuario da una entrada y getch() lee la entrada sin presionar el botón Intro
    cambiar ( elección ) {
        caso '1' :
enfermedad de transmisión sexual :: corte << ' \norte seleccionas 'Pizza' \norte ' ;
            romper ;
        caso '2' :
enfermedad de transmisión sexual :: corte << ' \norte Seleccionas 'Hamburguesa' \norte ' ;
            romper ;
                caso '3' :
enfermedad de transmisión sexual :: corte << ' \norte Seleccionas 'Pastel' \norte ' ;
            romper ;
        por defecto :
enfermedad de transmisión sexual :: corte << '\Sin elección - Sin orden \norte ' ;
    }
    devolver 0 ;
}

Primero, declaramos las bibliotecas estándar requeridas al inicio del programa. Creamos una lógica dentro de la función principal y cualquier cosa dentro de la función principal del programa será ejecutable. Aquí declaramos una variable de 'elección' cuyo tipo de datos es un carácter. Luego, creamos un menú que es visible en la pantalla de la consola. Le damos al usuario un “Menú de restaurante” con diferentes opciones como “Pizza”, “Hamburguesa”, “Pastel” y “Sin opción”.



Pasamos getch() a la variable elección porque la entrada del usuario se almacena en esta variable y muestra la salida automáticamente de acuerdo con la opción seleccionada. Para seleccionar una opción del menú, usamos la función switch() y pasamos 'elección' en esta función. Dentro del método de “cambio”, presentamos los casos para cada opción individualmente. En el método 'switch' en C++, siempre se usa una declaración de interrupción al final de cada caso que indica el final de la declaración. Cuando lo compilamos y ejecutamos, el resultado se muestra en la pantalla de la consola que se adjunta a continuación:





Ahora, la función getch() funcionará aquí. Cuando el usuario ingresa la elección, la función getch() comparará esta entrada con la caja del interruptor y mostrará la salida u opción en la consola de forma automática e inmediata.



En la captura de pantalla adjunta anteriormente, el usuario ingresa la opción '2' y el resultado aparece en la pantalla como 'selecciona 'Hamburguesa''. El funcionamiento de getch() se borra en este ejemplo cuando el usuario ingresa la entrada y el resultado esperado se muestra en la pantalla de la consola en lugar de la entrada proporcionada por el usuario que se muestra en la consola.

Escenario 2: aceptar la contraseña oculta del usuario mediante Getch()

En este escenario, analizaremos el concepto de cómo el usuario puede ingresar la contraseña en secreto y mostrar la contraseña ingresada en la pantalla de la consola. Aquí, usamos la función getch() para mantener la pantalla hasta que el usuario pasa la entrada. Recuerde que getch() no muestra la entrada del usuario ya que el cursor no muestra la entrada en la pantalla de la consola. El fragmento de código de este escenario se menciona a continuación:

#incluir
#incluir
#include
#incluir
#incluir
En t principal ( )
{
    carbonizarse pasar [ 8 ] ;
    En t metro ;
enfermedad de transmisión sexual :: corte << 'Ingrese una contraseña de 8 dígitos: ' ;
    para ( metro = 0 ; metro <= 7 ; metro ++ ) {
pasar [ metro ] = conseguir ( ) ;
enfermedad de transmisión sexual :: corte << '*' ;
    }
pasar [ metro ] = ' \0 ' ;
enfermedad de transmisión sexual :: corte << ' \norte ' ;
enfermedad de transmisión sexual :: corte << 'Mostrar la contraseña ingresada:' ;
    para ( metro = 0 ; pasar [ metro ] ! = ' \0 ' ; metro ++ )
enfermedad de transmisión sexual :: corte << ( '%C' , paso [ metro ] ) ;
conseguir ( ) ;
    devolver 0 ;
}

Como se ve en el código proporcionado, agregue las bibliotecas estándar que son esenciales para el uso de la función getch() y para mostrar el resultado en la pantalla. La función principal de este programa es contener los diferentes pasos a través de los cuales ingresamos una contraseña del usuario y mostramos la contraseña en pantalla. Necesitamos que la variable de matriz cuyo tipo de datos sea 'Char' tenga un tamaño de 8 elementos. Excepto por esto, también necesitamos una variable que almacene los valores de iteración.

Aquí, utilizamos un 'bucle For' que lee cada recuento de entrada del usuario si el tamaño de la matriz es '8'. Luego, el usuario solo presiona la clave contraseña en la ventana de la consola de entrada con la ayuda del bucle. Dentro de este bucle 'for', pasamos la función getch() a la matriz passw[]. Esta función se mantiene en la pantalla hasta que el usuario ingresa los 8 caracteres de la contraseña. En cada recuento de bucle, imprima '*' en cada recuento de entrada del usuario y el bucle se cerrará aquí.

Después de eso, usamos nuevamente el bucle 'for' que muestra la contraseña oculta simplemente tomando los valores de passw[]. Getch mantiene la pantalla automáticamente hasta que la entrada del usuario se almacena perfectamente en la matriz y muestra la contraseña en la pantalla.

Haga clic en la opción 'Compilar y ejecutar' para ejecutar el programa y mostrar el resultado en la pantalla.

Ingrese la contraseña de 8 dígitos en la pantalla. Cuando finaliza la entrada de 8 dígitos, muestra automáticamente la contraseña escrita en la ventana de la consola. Presione las teclas del teclado 8 veces y escriba la contraseña.

La pantalla de salida se congela solo por la función getch(). La función getch() simplemente imprime los datos de entrada en la pantalla como se muestra en la captura de pantalla adjunta anteriormente.

Conclusión

Para concluir, getch() es la función más importante de la programación en C y C++ que facilita al usuario congelar la entrada desde el teclado sin mostrar o sin que el cursor muestre una entrada en la pantalla. Debido a su biblioteca no estándar, si no usamos getch() en el programa, la ventana de la consola se muestra hasta que el tiempo requerido para la ejecución del programa esté en milisegundos. En este artículo, explicamos este método con ejemplos de código adecuados.