关于scanf的返回值

Posted 汪神

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于scanf的返回值相关的知识,希望对你有一定的参考价值。

  今天写一个小程序时误用while(scanf("%d",&b)!=a),以为scanf的返回值就是输入的值。

其实真相是:

scanf返回接收到的变量值的个数。 
int  a,b,c。
a 1进去时,试图用字符‘a’对a赋值,肯定是错的,于是退出,返回成功接收到赋值的个数 0.
1 a进去时,首先a能获取1.但b不能获取‘a‘,于是返回只是1 
如果是  1 1的话,那就都成功,返回2

即返回值应为正确输入的个数,毕竟人家是输入函数嘛。

以上是关于关于scanf的返回值的主要内容,如果未能解决你的问题,请参考以下文章

scanf 用法大全

关于scanf和cin的问题

关于while (~scanf("%d %d", &m, &n))的用法

【重赏】关于cin与scanf的问题

禁止显示状态 警告 C6031 返回值被忽略: “scanf“.

scanf(“%s“,str);与scanf(“%s“,&str的理解