我正在处理一个小代码,我需要通过 scanf 函数将整行作为输入,我认为有一个格式说明符 "[^\n%*c]" 有人可以告诉我它的语法以及它是如何工作的?
2 回答
1
最好的方法可能是使用fgets.
char str[20];
fgets(str, 20, stdin);
printf("%s", str);
没有理由在scanf这里使用。请记住,这fgets也会将换行符放入缓冲区中。它可以像这样删除:
str[strcspn(str, "\n")] = 0;
于 2021-08-15T15:29:11.840 回答
0
#include <stdio.h>
int main()
{
char str[20];
scanf("%19[^\n]%*c", str);
printf("%s\n", str);
return 0;
}
于 2021-08-15T15:08:56.743 回答