I've already read the FAQ entery wich is located here so please don't mention it and focus on answering my question.
now my questions are :Code:#include<stdio.h> int main() { int number; char ch , string[100]; printf("Input a number : \n"); scanf("%d", &number); while( ch = getchar() != '\n' && ch != EOF); printf("Input a string : \n"); fgets(string, sizeof(string), stdin); printf("You've entered %d and %s\n", number , string); return 0; }
[list=1][*]Why doesn't the program wait for the user to input a character with getchar() in the line :
while( ch = getchar() != '\n' && ch != EOF);
[*] I've read on some sites that scanf() leaves the '\n' on the input buffer. If thats right , then why doesn't fgets() leaves one too??
[*]why doesn't fgets() wait for input if the '\n' was in stdin??[/list=1]
thanks for your time.



LinkBack URL
About LinkBacks



thanks alot. Thank you too Viaxd