在《实用C编程》这本书中,我发现使用fgets()
和sscanf()
函数的组合可以读取输入。然而,在我看来,同样的目标可以更容易地使用fscanf()
函数实现:
来自书籍(思路,而不是示例):
int main()
{
int age, weight;
printf("Enter age and weight: ");
char line[20];
fgets(line, sizeof(line), stdin);
sscanf(line, "%d %d", &age, &weight);
printf("\nYou entered: %d %d\n", age, weight);
return 0;
}
我认为应该是这样:
int main()
{
int age, weight;
printf("Enter age and weight: ");
fscanf(stdin, "%d %d", &age, &weight);
printf("\nYou entered: %d %d\n", age, weight);
return 0;
}
或者我是漏掉了某些隐藏的怪癖吗?