help with scanf();

lionaneesh's Avatar, Join Date: Mar 2010
Invasive contributor
Code:
scanf("%[^\n]",line);
tell me the logic of this scanf statement and why " [^\n] " is used instead of %s ...
and how this statement works...

i know that this statement inputs lines till enter is pressed..

but what is the format of the scanf statements please tell...
karthigayan's Avatar, Join Date: Feb 2010
Go4Expert Member
It is equal to gets . By default scanf will read the input until it receives a word separator ( space,tab,etc ).

We can change that to some character . Here you changed to read until the new line ( Read the characters other than '\n' .If '\n' it will get end ) .