小编Ali*_*nık的帖子

C中`"%[^\n]"`和`"%[^\n]\n"`和`"%[^\n]%*c"`的区别它们是如何工作的?

我在其他任何地方都找不到答案。

%[^\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立即终止。

这三个是如何工作的,它们有什么不同?

c input scanf

5
推荐指数
1
解决办法
235
查看次数

标签 统计

c ×1

input ×1

scanf ×1