logo

Getchar()-funktio C:ssä

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.

Getchar()-funktio C:ssä

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.