We're a community of 1077K IT Pros here for help, advice, solutions, professional growth and fun. Join us!
1,076,007 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Start New Discussion Reply to this Discussion

Difference betn getch(),getche(),getchar() functions

I would like to know what is the difference betn
getchar(),getch(), and getche() functions and which should be used in which conditions.
Thanks,
comwizz. :confused:

12
Contributors
10
Replies
6 Years
Discussion Span
8 Months Ago
Last Updated
16
Views
comwizz
Light Poster
39 posts since Nov 2005
Reputation Points: 10
Solved Threads: 0
Skill Endorsements: 0

getchar This is a standard function that gets a character from the stdin. getch This is a nonstandard function that gets a character from keyboard, does not echo to screen. getche This is a nonstandard function that gets a character from the keyboard, echoes to screen.

Use getchar if you want it to work on all compilers. Use getch or getche on a system that supports it when you want keyboard input without pressing [Enter].

And note that the return value of all three is int ! You need this to properly check for EOF.

Dave Sinkula
long time no c
Team Colleague
5,058 posts since Apr 2004
Reputation Points: 2,780
Solved Threads: 314
Skill Endorsements: 38

Thanks for the reply :)

comwizz
Light Poster
39 posts since Nov 2005
Reputation Points: 10
Solved Threads: 0
Skill Endorsements: 0

wat is echo??

pavangavvala
Newbie Poster
2 posts since May 2009
Reputation Points: 31
Solved Threads: 0
Skill Endorsements: 0

>wat is echo??
In this case, echo means that when you type a character, it prints to the screen so you can see what you typed.

Narue
Bad Cop
Team Colleague
15,460 posts since Sep 2004
Reputation Points: 6,483
Solved Threads: 1,407
Skill Endorsements: 54

>wat is echo??
In this case, echo means that when you type a character, it prints to the screen so you can see what you typed.

THANK U NARUE......:)

pavangavvala
Newbie Poster
2 posts since May 2009
Reputation Points: 31
Solved Threads: 0
Skill Endorsements: 0

getch() returns the character you typed without displaying it on the screen.
getche() returns the character you typed by displaying(echoing) it on the screen.
and finally, getchar() works similarly and echos the character that u typed on the screen after "enter" is given.
hope you understood!!
all the best !! :)

I would like to know what is the difference betn
getchar(),getch(), and getche() functions and which should be used in which conditions.
Thanks,
comwizz. :confused:

rocky2008
Newbie Poster
10 posts since Jun 2008
Reputation Points: 10
Solved Threads: 0
Skill Endorsements: 0

Rocky2008> hope you understood!!
What part of post #2 did you not understand?

Aia
Nearly a Posting Maven
2,394 posts since Dec 2006
Reputation Points: 2,224
Solved Threads: 220
Skill Endorsements: 14

I would like to know what is the difference betn
getchar(),getch(), and getche() functions and which should be used in which conditions.
Thanks,
comwizz. :confused:

getche-displays the character that u have typed on the screen
getch-just returns the character that had been typed without displaying on the screen.
getchar-works similar as getche but needs an ENTER followed by the char typed...(macro version)

patria987
Newbie Poster
9 posts since May 2009
Reputation Points: 10
Solved Threads: 0
Skill Endorsements: 0

wat is echo??

The experience you get from people posting the same, over and over, in this thread.

People! this thread has been answered since post number two. And the only thing it could be added to it might be that unless you have a compelling reason to handicap your code with none standard functions, do not use getche() or getche().

Aia
Nearly a Posting Maven
2,394 posts since Dec 2006
Reputation Points: 2,224
Solved Threads: 220
Skill Endorsements: 14

By : Shravan Aras <EMAIL SNIPPED>
Another interesting application of the getCh() function.
Also from my experience i have observed that sometimes the program fails to stop at

scanf(...)

. This happens because there is already some existing value in the buffer. To avoid this one can use

getCh();

to first clear the buffer and then use scanf function.
I am not completely sure of this process but has worked for me more than 90% of the times.

123.shravan
Newbie Poster
1 post since Dec 2009
Reputation Points: 10
Solved Threads: 0
Skill Endorsements: 0

This article has been dead for over three months: Start a new discussion instead

Post: Markdown Syntax: Formatting Help
 
You
 
© 2013 DaniWeb® LLC
Page rendered in 0.0995 seconds using 2.65MB