logo

Fonction Getchar() en C

Dans cette section, nous apprendrons la fonction getchar() dans le langage de programmation C. UN getchar() la fonction est un non standard fonction dont la signification est déjà définie dans le stdin.h fichier d’en-tête pour accepter une seule entrée de l’utilisateur. En d’autres termes, c’est la fonction de la bibliothèque C qui récupère un seul caractère (caractère non signé) du stdin. Cependant, la fonction getchar() est similaire à la fonction getc(), mais il existe une petite différence entre les fonctions getchar() et getc() du Langage de programmation C . Un getchar() lit un seul caractère à partir d'une entrée standard, tandis qu'un getc() lit un seul caractère à partir de n'importe quel flux d'entrée.

Fonction Getchar() en C

Syntaxe

mise à jour en SQL avec jointure
 int getchar (void); 

Il n'a aucun paramètre. Cependant, il renvoie les caractères lus sous forme de caractère non signé dans un int, et s'il y a une erreur sur un fichier, il renvoie le EOF à la fin du fichier.

Nous écrivons maintenant plusieurs programmes de fonction getchar() pour accepter des caractères uniques en C et les imprimer à l'aide de la fonction putchar().

Lire un seul caractère à l'aide de la fonction getchar()

Considérons un programme pour en prendre un seul en utilisant la fonction getchar() en C.

Programme.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(); } 

Sortir

 Enter a character A You have passed A 

Comme nous pouvons le voir dans le programme ci-dessus, il prend un seul caractère au moment de l'exécution de la part de l'utilisateur utilisant la fonction getchar(). Après avoir obtenu le caractère, il imprime la lettre via la fonction putchar().

Lire n caractères de l'utilisateur à l'aide de la fonction getchar()

Considérons un programme pour lire n caractères en utilisant la fonction getchar() en 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; } 

Sortir

 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: 

Comme nous pouvons le voir dans la sortie ci-dessus, une boucle while accepte en permanence un caractère de l'utilisateur jusqu'à ce que l'utilisateur ne transmette pas le caractère #. Ici, la fonction getchar() prend un seul caractère de l'entrée standard et l'affecte à une variable ch. Alors que la fonction putchar() imprime le caractère lu.

Lire un seul caractère à l'aide de la fonction scanf()

Considérons un programme pour lire un caractère à l'aide de la fonction de bibliothèque scanf() en C.

Prog.c

exemple de liste en java
 #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; } 

Sortir

 Enter the character A You have entered A 

Comme nous pouvons le voir, lorsque nous exécutons le programme ci-dessus, il prend un seul caractère ou un groupe de caractères en utilisant la fonction de bibliothèque scanf() au lieu de la fonction getchar(). Mais il y a une petite différence ; une fonction scanf() peut prendre un seul ou un groupe de caractères de l'utilisateur, tandis que la fonction getchar() ne peut accepter qu'un seul caractère.

Ici, nous exécutons à nouveau le programme ci-dessus, et cette fois, il affiche les résultats ci-dessous.

 Enter the character Apple You have entered A 

Lire les caractères à l'aide d'une boucle do-while

Considérons un programme pour lire les caractères en utilisant les fonctions do while et getchar() en C.

Pendant ce temps1.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; } 

Sortir

 Enter the characters from the keyboard (Press Enter button to stop). Well b47gvb come Entered characters are Well b47gvb come 

Dans le programme ci-dessus, une boucle do-while accepte continuellement les caractères jusqu'à ce que l'utilisateur passe le ENTRER bouton pour quitter la boucle.