V tejto časti sa naučíme funkciu getchar() v programovacom jazyku C. A getchar() funkcia je a neštandardné funkcia, ktorej význam je už definovaný v stdin.h hlavičkový súbor na prijatie jediného vstupu od používateľa. Inými slovami, je to funkcia knižnice C, ktorá získa jeden znak (nepodpísaný znak) zo štandardného kódu. Funkcia getchar() je však podobná funkcii getc(), ale medzi funkciami getchar() a getc() je malý rozdiel. C programovací jazyk . Getchar() číta jeden znak zo štandardného vstupu, zatiaľ čo getc() číta jeden znak z ľubovoľného vstupného toku.
Syntax
objekt v jave
int getchar (void);
Nemá žiadne parametre. Prečítané znaky však vráti ako nepodpísaný znak v int, a ak sa v súbore vyskytne chyba, vráti EOF na konci súboru.
Teraz napíšeme niekoľko funkčných programov getchar(), ktoré akceptujú jednotlivé znaky v C a vytlačíme ich pomocou funkcie putchar ().
Prečítajte si jeden znak pomocou funkcie getchar().
Uvažujme o programe na vytvorenie singla pomocou funkcie 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(); }
Výkon
Enter a character A You have passed A
Ako môžeme vidieť vo vyššie uvedenom programe, odoberie používateľovi jeden znak v čase spustenia pomocou funkcie getchar(). Po získaní znaku vytlačí písmeno prostredníctvom funkcie putchar().
Prečítajte si n znakov od používateľa pomocou funkcie getchar().
Zoberme si program na čítanie n znakov pomocou funkcie 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; }
Výkon
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:
Ako môžeme vidieť vo vyššie uvedenom výstupe, cyklus while nepretržite prijíma znak od používateľa, až kým používateľ neprejde znakom #. Tu funkcia getchar() vezme jeden znak zo štandardného vstupu a priradí ho premennej ch. Zatiaľ čo funkcia putchar() vypíše prečítaný znak.
Prečítajte si jeden znak pomocou funkcie scanf().
Uvažujme o programe na čítanie znaku pomocou funkcie knižnice scanf() v C.
Prog.c
výhody a nevýhody technológie
#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; }
Výkon
Enter the character A You have entered A
Ako môžeme vidieť, keď spustíme vyššie uvedený program, zaberie jeden znak alebo skupinu znakov pomocou funkcie knižnice scanf() namiesto funkcie getchar(). Ale je tu malý rozdiel; funkcia scanf() môže od používateľa prevziať jeden znak alebo skupinu znakov, zatiaľ čo funkcia getchar() môže prijať iba jeden znak.
Tu opäť spustíme vyššie uvedený program a tentoraz ukáže nižšie uvedené výsledky.
Enter the character Apple You have entered A
Prečítajte si znaky pomocou cyklu do-while
Zoberme si program na čítanie znakov pomocou funkcií do while a getchar() v C.
Dowhile1.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; }
Výkon
Enter the characters from the keyboard (Press Enter button to stop). Well b47gvb come Entered characters are Well b47gvb come
Vo vyššie uvedenom programe slučka do-while nepretržite prijíma znaky, kým používateľ neprejde ENTER tlačidlo na opustenie slučky.