Tässä osiossa opimme getchar()-funktion C-ohjelmointikielessä. A getchar() toiminto on a ei-standardi funktio, jonka merkitys on jo määritetty stdin.h otsikkotiedosto hyväksyäksesi yhden syötteen käyttäjältä. Toisin sanoen C-kirjastofunktio saa yhden merkin (allekirjoittamattoman merkin) stdin:stä. Getchar()-funktio on kuitenkin samanlainen kuin getc()-funktio, mutta funktion getchar()- ja getc()-funktioiden välillä on pieni ero. C-ohjelmointikieli . getchar() lukee yhden merkin vakiosyötteestä, kun taas getc() lukee yhden merkin mistä tahansa syöttövirrasta.
Syntaksi
int getchar (void);
Siinä ei ole mitään parametreja. Se kuitenkin palauttaa luetut merkit etumerkittömänä merkkinä int:ssä, ja jos tiedostossa on virhe, se palauttaa EOF tiedoston lopussa.
Nyt kirjoitamme useita getchar()-funktioohjelmia hyväksymään yksittäisiä merkkejä C:ssä ja tulostamme ne käyttämällä putchar ()-funktiota.
Lue yksi merkki käyttämällä getchar()-funktiota
Tarkastellaan ohjelmaa, joka ottaa singlen käyttämällä getchar()-funktiota C:ssä.
Ohjelma.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(); }
Lähtö
Enter a character A You have passed A
Kuten yllä olevassa ohjelmassa näemme, se vie yhden merkin ajon aikana käyttäjältä, joka käyttää getchar()-funktiota. Saatuaan merkin, se tulostaa kirjaimen putchar()-funktion kautta.
Lue n merkkiä käyttäjältä getchar()-funktiolla
Tarkastellaan ohjelmaa, joka lukee n merkkiä käyttämällä getchar()-funktiota C:ssä.
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; }
Lähtö
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:
Kuten yllä olevassa lähdössä näemme, while-silmukka hyväksyy jatkuvasti merkin käyttäjältä, kunnes käyttäjä ei välitä #-merkkiä. Tässä getchar()-funktio ottaa yhden merkin vakiosyötteestä ja liittää ne ch-muuttujaan. Kun taas putchar()-funktio tulostaa luetun merkin.
Lue yksi merkki käyttämällä scanf()-funktiota
Tarkastellaan ohjelmaa, joka lukee merkin käyttämällä scanf()-kirjastofunktiota C:ssä.
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; }
Lähtö
Enter the character A You have entered A
Kuten voimme nähdä, kun suoritamme yllä olevan ohjelman, se vie yhden merkin tai merkkiryhmän käyttämällä scanf()-kirjastofunktiota getchar()-funktion sijaan. Mutta on pieni ero; scanf()-funktio voi ottaa käyttäjältä yksittäisen tai ryhmän merkkejä, kun taas getchar()-funktio voi hyväksyä vain yhden merkin.
Täällä suoritamme jälleen yllä olevan ohjelman, ja tällä kertaa se näyttää alla olevat tulokset.
Enter the character Apple You have entered A
Lue merkit käyttämällä do-while-silmukkaa
Tarkastellaan ohjelmaa, joka lukee merkit käyttämällä do while- ja getchar()-funktioita C:ssä.
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; }
Lähtö
Enter the characters from the keyboard (Press Enter button to stop). Well b47gvb come Entered characters are Well b47gvb come
Yllä olevassa ohjelmassa do-while-silmukka hyväksyy merkit jatkuvasti, kunnes käyttäjä ohittaa TULLA SISÄÄN -painiketta poistuaksesi silmukasta.