1. 主页
  2. 文档
  3. C语言教程
  4. C语言输入输出
  5. C/C++ 中 printf() 和 scanf() 的返回值

C/C++ 中 printf() 和 scanf() 的返回值

printf()scanf() 函数返回什么值
printf() :返回打印字符总数,如果输出错误或编码错误,则返回负值 
示例 1:下面编写的代码中的 printf() 函数返回 6。因为 ‘CODING’ 包含 6 个字符。

// C/C++ program to demonstrate return value
// of printf()
#include <stdio.h>

int main()
{
char st[] = "CODING";

printf("While printing ");
printf(", the value returned by printf() is : %d",
printf("%s", st));

return 0;
}

输出

While printing CODING, the value returned by printf() is : 6

示例 2:下面编写的代码中的 printf() 函数返回 9。因为 ‘123456789’ 包含 9 个字符。

// C/C++ program to demonstrate return value
// of printf()

#include <stdio.h>
int main()
{
long int n = 123456789;

printf("While printing ");
printf(", the value returned by printf() is : %d",
printf("%ld", n));

return 0;
}

输出

While printing 123456789, the value returned by printf() is : 9

scanf() :它返回扫描成功的输入总数,如果在分配第一个接收参数之前发生输入失败,则返回EOF。
示例 1:下面编写的代码中的第一个 scanf() 函数返回 1,因为它正在扫描 1 个项目。同样,第二个 scanf() 在扫描 2 个输入时返回 2,第三个 scanf() 在扫描 3 个输入时返回 3。

// C/C++ program to demonstrate return value
// of printf()

#include <stdio.h>
int main()
{
char a[100], b[100], c[100];

// scanf() with one input
printf("\n First scanf() returns : %d",
scanf("%s", a));

// scanf() with two inputs
printf("\n Second scanf() returns : %d",
scanf("%s%s", a, b));

// scanf() with three inputs
printf("\n Third scanf() returns : %d",
scanf("%s%s%s", a, b, c));

return 0;
}
Input:
Hey!
welcome to
52cxydh for 52cxydh 


Output:
 First scanf() returns : 1
 Second scanf() returns : 2
 Third scanf() returns : 3

 

 

 

这篇文章对您有用吗? 1