使用scanf时输出奇怪

Exp*_*ice 5 c c++ scanf

#include <cstdio>  

int main()  
{  
    int i;
    printf("%d", scanf("%d", &i));
}
Run Code Online (Sandbox Code Playgroud)

无论我输入什么数字,我得到输出:

1
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

Sad*_*que 11

成功时,scanf功能

返回成功读取的项目数.

如果发生匹配故障,此计数可以匹配预期的读数或更少,甚至为零.如果在成功读取任何数据之前输入失败,则返回EOF.

试试这个:

printf("%d",scanf("%d%d",&i,&i));

  • 不,我觉得他不知道`scanf`到底是什么回归. (2认同)