I had just read about streams. I had read that the stdin was line buffered in my compiler. So I thought the reason getchar() didn't immediately read the character was because of this line buffering. I just wanted to clarify that.
Thanks for the link. So the reason getchar() doesn't immediately read is not because of how stdin is buffered.. but a limitation of when input is added to the stdin..?