我在其他任何地方都找不到答案。
%[^\n]- 当我运行这个时,scanf按回车键后正在输入和终止。(可能留\n在输入系统中)
%[^\n]\n- 这个正在获取输入,但scanf在我像上面那样按下回车键后不会立即终止。我点击了更多的输入,它会产生更多的换行符。当我给出一个字符然后按回车键时它最终会终止。例子:
int main(void)
{
char s[100];
scanf("%[^\n]\n", s);
printf("%s", s);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
结果:
最后一个:
%[^\n]%*c- 当我给出一些输入并按回车键时。scanf立即终止。
这三个是如何工作的,它们有什么不同?