getch funkcija C++

Getch Funkcija C



C un C++ programmēšanas valodu jomā tiek izmantotas dažādas dabiskās metodes un bibliotēkas. Šajā rakstā mēs rūpīgi izpētīsim C++ metodi getch(). Funkcija getch() tiek izmantota, ja mēs vēlamies nolasīt rakstzīmju virkni no mūsu tastatūras, un tā neprojicē izvadi uz ekrāna. Šeit mēs pareizi izpētīsim šo getch() funkciju, izmantojot derīgus piemērus un pierādījumus jūsu izpratnei. Šo metodi galvenokārt var izmantot konsoles (izvades) scenārijos C++, lai saņemtu ievadi no lietotāja.

Kas ir Getch() programmā C++?

Programmā C++ bibliotēka ar nosaukumu “cstdio” galvenes fails galvenokārt tiek izmantota funkcijai getch (). Getch() ir definēts arī “conio. h” galvenes fails, kas ir raksturīgs kompilatoram un ir nestandarta funkcija, jo tā nav pilnībā C++ bibliotēkas standarta daļa. Getch saīsinājums ir “get character”, un to izmanto, lai kādu laiku paliktu izvades ekrānā, līdz lietotājs nodod ievadi.

Ļaujiet mums pareizi izstrādāt šo jēdzienu, izmantojot piemērus. Šeit mēs uzzināsim par getch() metodes sintaksi, lietošanu un uzvedību programmā C++, izmantojot atbilstošus scenārijus.







1. scenārijs: kā lietot Getch() izvēlnēs vadītā lietojumprogrammā

Parunāsim par izvēlņu vadītu mazo lietojumprogrammu, kurai mēs uzskaitīsim dažādas iespējas. Katra opcija ir paredzēta dažādiem mērķiem, piemēram, restorāna ēdienkartei. Šī piemēra koda fragments ir pievienots tālāk.



#include
#include
#include
izmantojot nosaukumvieta std ;
starpt galvenais ( ) {
char izvēle ;
std :: cout << 'Restorāna ēdienkarte: \n ' ;
std :: cout << 1. iespēja: pica \n ' ;
std :: cout << 2. iespēja: burgers \n ' ;
std :: cout << 3. iespēja: kūka \n ' ;
std :: cout << 'Ievadiet savu izvēli:' ;
izvēle = getch ( ) ; // lietotājs ievada ievadi un getch() nolasa ievadi, nenospiežot taustiņu Enter
slēdzis ( izvēle ) {
lietu '1' :
std :: cout << ' \n jūs izvēlaties 'picu' \n ' ;
pārtraukums ;
lietu '2' :
std :: cout << ' \n Jūs izvēlaties 'Burgers' \n ' ;
pārtraukums ;
lietu '3' :
std :: cout << ' \n Jūs izvēlaties 'Kūka' \n ' ;
pārtraukums ;
noklusējuma :
std :: cout << '\Nav izvēles — nav pasūtījuma \n ' ;
}
atgriezties 0 ;
}

Pirmkārt, programmas sākumā mēs deklarējam vajadzīgās standarta bibliotēkas. Mēs izveidojam loģiku galvenajā funkcijā, un viss, kas atrodas programmas galvenajā funkcijā, būs izpildāms. Šeit mēs deklarējam “izvēles” mainīgo, kura datu tips ir rakstzīme. Pēc tam mēs izveidojam izvēlni, kas ir redzama konsoles ekrānā. Mēs piedāvājam lietotājam “restorāna ēdienkarti” ar dažādām iespējām, piemēram, “Pica”, “Burgers”, “Kūka” un “Nav izvēles”.



Mēs nododam getch() mainīgā izvēlei, jo lietotāja ievade tiek saglabāta šajā mainīgajā un automātiski parāda izvadi atbilstoši atlasītajai opcijai. Lai izvēlētos opciju no izvēlnes, mēs izmantojam funkciju switch() un šajā funkcijā nododam “choice”. Izmantojot “slēdža” metodi, mēs izskatām lietas pret katru opciju atsevišķi. Izmantojot C++ metodi 'slēdžu', katra gadījuma beigās vienmēr tiek izmantots pārtraukuma paziņojums, kas norāda priekšraksta beigas. Kad mēs to apkopojam un izpildām, izvade tiek parādīta konsoles ekrānā, kas pievienots tālāk:





Tagad šeit darbosies funkcija getch (). Kad lietotājs ievada izvēli, funkcija getch() salīdzinās šo ievadi ar slēdža korpusu un automātiski un nekavējoties parādīs izvadi vai opciju konsolē.



Iepriekš pievienotajā ekrānuzņēmumā lietotājs ievada izvēli “2”, un ekrānā tiek parādīta izvade kā “izvēlaties “Burger”. Getch() darbība šajā piemērā ir notīrīta, kad lietotājs ievada ievadi, un konsoles ekrānā tiek parādīta paredzamā izvade, nevis lietotāja ievadītā ievade, kas tiek rādīta konsolē.

2. scenārijs: pieņemiet slēpto paroli no lietotāja, izmantojot Getch()

Šajā scenārijā mēs apskatīsim koncepciju, kā lietotājs var slepeni ievadīt paroli un parādīt ievades paroli konsoles ekrānā. Šeit mēs izmantojam funkciju getch(), lai noturētu ekrānu, līdz lietotājs nodod ievadi. Atcerieties, ka getch() neparāda lietotāja ievadi, jo kursors neparāda ievadi konsoles ekrānā. Šī scenārija koda fragments ir minēts šādi:

#include
#include
#include
#include
#include
starpt galvenais ( )
{
char pasw [ 8 ] ;
starpt m ;
std :: cout << 'Ievadiet 8 ciparu paroli:' ;
priekš ( m = 0 ; m <= 7 ; m ++ ) {
pasw [ m ] = getch ( ) ;
std :: cout << '*' ;
}
pasw [ m ] = ' \0 ' ;
std :: cout << ' \n ' ;
std :: cout << 'Rādīt ievadīto paroli:' ;
priekš ( m = 0 ; pasw [ m ] ! = ' \0 ' ; m ++ )
std :: cout << ( '%c' , pasw [ m ] ) ;
getch ( ) ;
atgriezties 0 ;
}

Kā redzams dotajā kodā, pievienojiet standarta bibliotēkas, kas ir būtiskas funkcijas getch() lietošanai un izvades parādīšanai ekrānā. Šīs programmas galvenā funkcija ir ietvert dažādas darbības, kuru laikā mēs ievadām lietotāja paroli un parādām paroli ekrānā. Mums ir nepieciešams masīva mainīgais, kura datu tips ir “Char”, kura lielums ir 8 elementi. Izņemot šo, mums ir nepieciešams arī mainīgais, kas saglabā iterācijas vērtības.

Šeit mēs izmantojam “For Loop”, kas nolasa katru lietotāja ievades skaitu, ja masīva izmērs ir “8”. Pēc tam lietotājs ievades konsoles logā tikai nospiež atslēgas paroli ar cilpas palīdzību. Šajā “for” cilpā mēs nododam funkciju getch () masīvam passw []. Šī funkcija darbojas ekrānā, līdz lietotājs ievada 8 paroles rakstzīmes. Katrā cilpu skaitā izdrukājiet “*” uz katra lietotāja ievades skaita, un cilpa šeit tiek aizvērta.

Pēc tam mēs atkal izmantojam cilpu “for”, kas parāda pašu slēpto paroli, vienkārši ņemot vērtības no passw []. Getch automātiski aiztur ekrānu, līdz lietotāja ievadītā informācija tiek nevainojami saglabāta masīvā, un ekrānā parāda paroli.

Noklikšķiniet uz opcijas “Kompilēt un palaist”, lai izpildītu programmu un parādītu izvadi ekrānā.

Ekrānā ievadiet 8 ciparu paroli. Kad 8 ciparu ievade ir pabeigta, konsoles logā automātiski tiek parādīta ievadītā parole. Nospiediet tastatūras taustiņus 8 reizes un ierakstiet paroli.

Izvades ekrāns sasalst tikai funkcijas getch() dēļ. Funkcija getch () vienkārši izdrukā ievades datus ekrānā, kā parādīts iepriekš pievienotajā ekrānuzņēmumā.

Secinājums

Nobeigumā jāsaka, ka getch () ir vissvarīgākā C un C++ programmēšanas funkcija, kas lietotājam ļauj iesaldēt ievadi no tastatūras, nerādot vai kursoram nerādot ievadi ekrānā. Nestandarta bibliotēkas dēļ, ja programmā neizmantojam getch(), konsoles logs tiek rādīts, līdz nepieciešamais programmas izpildes laiks ir milisekundēs. Šajā rakstā mēs izskaidrojām šo metodi ar pareiziem koda piemēriem.