c语言中scanf和printf都是输出函数,两者有什么区别呢两者完全不同,scanf是输入函数,printf是输出函数,所以会经常同时出现 。两者也没有可比性,需要弄清他们的概念 。
1.scanf()是C语言中的一个输入函数 。函数 scanf() 是从标准输入流stdio (标准输入设备,一般指向键盘)中读内容的通用子程序 , 可以说明的格式读入多个字符,并保存在对应地址的变量中 。
比如:scanf("%d %d",a,b);
函数返回值为int型 。如果a和b都被成功读入 , 那么scanf的返回值就是2;
如果只有a被成功读入,返回值为1;
如果a和b都未被成功读入,返回值为0;
如果遇到错误或遇到end of file,返回值为EOF 。end of file为Ctrl+z 或者Ctrl+d 。
2.printf()函数是格式化输出函数, 它是c语言中产生格式化输出的函数(在 stdio.h 中定义) 。用于向终端(显示器、控制台等)输出字符 。格式控制由要输出的文字和数据格式说明组成 。
printf 函数的一般形式为:
int printf(const char *format, [argument]);
Format 参数是包含三种对象类型的一个字符串:
(1)无格式字符复制到输出流;
(2)转换规范,每个规范导致在值参数列表中检索 1 个或更多个项;
(3)转义序列 。
[Argument]包含需要输出的数据,可以是常量(字符常量、数字常量、字符串常量),变量,以及运算式 。此处的数据应当与前面的format中的格式控制符一一对应(如果不对应会产生错误) 。
例子:
#includestdio.h
int main(){
int i, j;
scanf("%d %d", i, j);//获得输入值i,j;
printf("i=%d;j=%d", i, j);//输出i,j;
return 0;}
扩展资料:
在C语言或C++中,会把用来#include的文件的扩展名叫 .h , 称其为头文件 。#include文件的目的就是把多个编译单元(也就是c或者cpp文件)公用的内容,单独放在一个文件里减少整体代码尺寸;或者提供跨工程公共代码 。
stdio 就是指 “standard inputoutput"(标准输入输出) 。
在C语言中,输入和输出是经由标准库中的一组函数来实现的 。在ANSI C中,这些函数被定义在头文件stdio.h中 。所以,源代码中如用到标准输入输出函数时,就要包含这个头文件.
引用方法:#include stdio.h;
有三个标准输入/输出是标准I/O库预先定义的:
stdin标准输入;
stdout标准输出;
stderr输入输出错误 。
参考资料:printf-百度百科
scanf-百度百科
在C语言中,int 函数与void 函数有什么区别1、作用不同
主函数返值可以定义为两种函数c语言用法的区别,int型或void型 。区别在于int型main函数需要有返值,而void型则不需要 。
main函数返zhi值作用函数c语言用法的区别:每个C程序最终函数c语言用法的区别的目标是为函数c语言用法的区别了执行,也就是编译成可执行文件后,被运行 。main函数的返dao值将被传递到主调进程中,主调进程可以通过返回值判断是否执行正常 。
2、操作方式不同
在标准的C语言中,推荐主函数有返回值 , 并一般约定返回0代表程序工作无问题 。在调用一个可执行文件时,并不能很直观的得到返回值,而需要额外的操作 。
比如在shell脚本或者批处理中以变量保存返回值并显示,或者通过echo语句显示特定的内置变量值 。
3、结果的不同
使用void型main函数 , 等于放弃了通过返回值来表明程序是否运行成功的渠道 , 这对于在shell脚本或者批处理文件中调用可执行程序时,判断是否执行政策是很不利的,所以如果想要所写的程序可以有更强的适应性,还是使用int作为main的返回值类型为好 。
推荐阅读
- 路由器桥接什么情况会切换,路由器桥接什么情况会切换网络
- redis和数据库可以传递数据吗,redis中的数据怎么和数据库保持一致
- java保护类型代码,java 保护
- erp系统纺织计划操作流程,纺织erp管理系统
- vb.net对象扩展 vbnet object类型
- linux运维课堂命令,linux运维命令常用命令
- 怎么设置登录html模板,怎么设置登录html模板权限
- 安卓视频调色app软件,安卓视频调色app软件下载
- vb.net保存工程 如何保存vb工程,保存时应注意什么问题