C语言printf()与scanf()返回值

1.printf()

​ 在C语言中printf()函数不仅可以将指定信息打印输入到屏幕上,同时这个函数在执行的过程中会存在一个返回值,这个返回值就是所要输出字符串的字符数(包括空格和换行符)

#include <stdio.h>
int main(void){
    int c;
    int a=1111;
    c = printf("%dsgsgrg\n",a);
    printf("%d\n",c);
    return 0;
}

结果:

1111sgsgrg
11

包括\n换行符。

2.scanf()

​ scanf()在C语言中一般是读取输入的字符,也就是输入的功能(在实际环境中因为容易出现“堆栈溢出”或“缓冲区溢出”等安全问题,所以可能用的并不多)。当然scanf()也存在返回值,它的返回值为从输入读取成功的变量数,如果类型(数值和字符)不同,则是读取失败,返回0。

#include <stdio.h>
int main(void){
    int c;
    int a;
    int b;
    int d;
    c = scanf("%d %d %d %d",&a,&b,&d);
    printf("%d\n",c);
    return 0;
}
54 56 56 44
4

注:以此代码为例,如果在输入时不是输入了数值,而是字符,程序则不会读取字符及其以后要输入的内容(后面的读取全部失败)。

56 fd 87 ee
1

猜你喜欢

转载自www.cnblogs.com/venoms/p/11520152.html