C语言中的printf和scanf
今天敲代码发现一个不曾了解过的printf和scanf的用法,记录一下。
返回值问题:
如下所示代码,一直以来主要思考的是,输出数据到屏幕上,没有考虑过printf还有返回值。它的返回值是输出字符的位数。
#include <stdio.h>
int main()
{
int m;
int num = 20;
printf("%d\n",num);//20
m = printf("%d\n",num);//20
//返回值为printf输出字符的位数,两位
printf("%d\n",m);//2
return 0;
}
scanf和printf都是如此,可以写一个简单的代码测试下scanf。
实例:
#include<stdio.h>
int main()
{
int num = 56;
printf("%d\n",printf("%d",printf("%d",num)));
return 0;
}
//此实例的结果以及分析更为明显,明显体会到printf的返回值,建议手敲实践