V tem razdelku se bomo naučili funkcije getchar() v programskem jeziku C. A getchar() funkcija je a nestandardno funkcija, katere pomen je definiran že v stdin.h datoteko glave, da sprejme en sam vnos uporabnika. Z drugimi besedami, funkcija knjižnice C je tista, ki dobi en sam znak (unsigned char) iz stdin. Vendar je funkcija getchar() podobna funkciji getc(), vendar obstaja majhna razlika med funkcijama getchar() in getc() Programski jezik C . Getchar() prebere en znak iz standardnega vnosa, medtem ko getc() prebere en znak iz katerega koli vhodnega toka.
Sintaksa
int getchar (void);
Nima parametrov. Vendar vrne prebrane znake kot nepredznačeni char v int, in če je v datoteki napaka, vrne EOF na koncu datoteke.
Zdaj pišemo več funkcijskih programov getchar() za sprejemanje posameznih znakov v C in njihovo tiskanje s funkcijo putchar().
Preberite en znak s funkcijo getchar().
Oglejmo si program, ki sprejme eno samo s funkcijo getchar() v C.
Program.c
#include #include void main() { char c; printf (' Enter a character '); c = getchar(); // get a single character printf(' You have passed '); putchar(c); // print a single character using putchar getch(); }
Izhod
Enter a character A You have passed A
Kot lahko vidimo v zgornjem programu, vzame en znak med izvajanjem od uporabnika s funkcijo getchar(). Ko dobi znak, natisne črko prek funkcije putchar().
Preberi n znakov od uporabnika s funkcijo getchar().
Oglejmo si program za branje n znakov s funkcijo getchar() v C.
Getchar.c
#include #include #include int main() { char ch; printf (' Enter a character ( If we want to exit press #) '); while (ch != '#') /* accept the number till the user does not enter the # to exit from the loop. */ { ch = getchar(); printf (' We have entered the character : '); putchar (ch); // print a single character printf (' '); } return 0; }
Izhod
Enter a character ( If we want to exit.. press #) A We have entered the character: A We have entered the character: B We have entered the character: B We have entered the character: C We have entered the character: C We have entered the character:
Kot lahko vidimo v zgornjem izhodu, zanka while nenehno sprejema znak od uporabnika, dokler uporabnik ne posreduje znaka #. Tukaj funkcija getchar() vzame en znak iz standardnega vnosa in ga dodeli spremenljivki ch. Medtem ko funkcija putchar() natisne prebrani znak.
Preberite en znak s funkcijo scanf().
Oglejmo si program za branje znaka s funkcijo knjižnice scanf() v C.
Prog.c
#include #include int main() { char ch; printf (' Enter the character '); scanf ('%c', &ch); // get a single character, numeric or words printf( ' You have entered %c', ch); /* It print a single character or first letter of the words. */ return 0; }
Izhod
Enter the character A You have entered A
Kot lahko vidimo, ko izvedemo zgornji program, sprejme en znak ali skupino znakov z uporabo knjižnične funkcije scanf() namesto funkcije getchar(). Vendar obstaja majhna razlika; funkcija scanf() lahko sprejme enega ali skupino znakov od uporabnika, medtem ko lahko funkcija getchar() sprejme samo en znak.
Tukaj spet izvedemo zgornji program in tokrat prikaže spodnje rezultate.
Enter the character Apple You have entered A
Preberite znake z uporabo zanke do-while
Oglejmo si program za branje znakov s funkcijo do while in getchar() v C.
Medtem1.c
#include #include int main() { int ch, i = 0; char str[150]; printf (' Enter the characters from the keyboard (Press Enter button to stop). '); // use do while loop to define the condition do { ch = getchar(); // takes character, number, etc from the user str[i] = ch; // store the ch into str[i] i++; // increment loop by 1 } while (ch != ' '); // ch is not equal to ' ' printf('Entered characters are %s ', str); return 0; }
Izhod
Enter the characters from the keyboard (Press Enter button to stop). Well b47gvb come Entered characters are Well b47gvb come
V zgornjem programu zanka do-while neprekinjeno sprejema znake, dokler uporabnik ne preide ENTER gumb za izhod iz zanke.