in

Función getch () en C con ejemplos

gfg 200x200 min

getch () es un función no estándar y está presente en encabezado conio.h expediente que es utilizado principalmente por compiladores de MS-DOS como Turbo C. Es no parte de la biblioteca estándar C o ISO C, ni está definida por POSIX.
Como estas funciones, getch () también lee un solo carácter del teclado. Pero no usa ningún búfer, por lo que el carácter ingresado se devuelve inmediatamente sin esperar la tecla Intro.
Sintaxis:

int getch(void);

Parámetros: Este método no acepta ningún parámetro.
Valor devuelto: Este método devuelve el valor ASCII de la tecla presionada.
Ejemplo:

C

#include <stdio.h>

#include <conio.h>

int main()

{

    printf("%c", getch());

    return 0;

}

Input:  g (Without enter key)
Output: Program terminates immediately.
        But when you use DOS shell in Turbo C, 
        it shows a single g, i.e., 'g'

Puntos importantes con respecto al método getch ():

  1. El método getch () detiene la consola de salida hasta que se presiona una tecla.
  2. No utiliza ningún búfer para almacenar el carácter de entrada.
  3. El carácter ingresado se devuelve inmediatamente sin esperar la tecla Intro.
  4. El carácter ingresado no aparece en la consola.
  5. El método getch () se puede utilizar para aceptar entradas ocultas como contraseña, números de PIN de cajeros automáticos, etc.

Ejemplo: aceptar contraseñas ocultas usando getch ()
Nota: El siguiente código no se ejecutará en compiladores en línea, sino en compiladores de MS-DOS como Turbo IDE.

C

#include <conio.h>

#include <dos.h> // delay()

#include <stdio.h>

#include <string.h>

void main()

{

    

    char pwd[9];

    int i;

    

    clrscr();

    printf("Enter Password: ");

    for (i = 0; i < 8; i++) {

        

        

        pwd[i] = getch();

        

        

        printf("*");

    }

    pwd[i] = ' ';

    printf("n");

    

    

    

    printf("Entered password: ");

    for (i = 0; pwd[i] != ' '; i++)

        printf("%c", pwd[i]);

    

    

    getch();

}

Producción:

Abcd1234

Producción:

Enter Password: ********
Entered password: Abcd1234

Si desea aprender de los mejores videos seleccionados y problemas de práctica, consulte el Curso básico de C de Básico a Avanzado C.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

apple touch icon@2

¿Cuál es la diferencia entre las etiquetas HTML y?

edit

Leche de búfalo vs leche de vaca: diferencia y comparación