printf()、scanf()、getchar()、putchar()的返回值

23 篇文章 1 订阅
12 篇文章 0 订阅

printf()、scanf()、getchar()、putchar()的返回值都为 int类型,这个要注意

1.printf()的返回值是打印字符的个数,且打印字符串的时候不会加上空字符’\0’

例:

#include<stdio.h>
int main(void)
{
    int n;
    n=printf("The number of characters printed is:");	//返回值为不包括'\0'的打印字符数
    printf("%d\n", n);
    return n;
}

最后的结果为:

The number of characters printed is:36

2.scanf()返回值返回的是成功读取的项数

#include<stdio.h>
#include<string.h>
int main(void)  
{
    int i,n,m,ch;
    ch=scanf("%d %d %d\n", &i, &n, &m);
    //ch=scanf("%*d %*d %d\n", &i, &n, &m);这里使用修饰符*,作用是使scanf()跳过相应的项
    printf("%d\n",ch);
    return ch;
}

这里使用//来区分两种情况的结果,让效果更明显:

3
// 1

3.getchar()的返回值是用户输入的第一个字符的ASCII码

#include<stdio.h>
int main(void)   
{
    printf("%d\n", getchar());
    return 0;
}
输入:1 2 3

结果:49	//这与数字1的ASCLL码符合 

4.putchar()的返回值返回的是原字符,但如果输入一连串字符,则只会返回第一个字符

5.printf()、scanf()、getchar()、putchar()这四个函数如果遇到错误或者检测到文件结尾(在不同的系统下会有所不同),都会返回EOF

EOF是一个值,还是个负值,一般情况下都是被定义为-1,但也可能是其它的负值,也正是因为EOF是一个负值,所有这四个函数的返回值为int类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值