文件,对我们并不陌生,文件是数据源(保存数据的地方)的一种,比如大家经常使用的word文档,txt文件,excel文件,avi文件…都是文件。文件最主要的作用就是保存数据
,它既可以保存一张图片,也可以保持视频,声音…
C程序中,对于文件中数据的输入/输出操作以“流(stream)
” 的方式进行,可以看做是一种数据的流动。
输入流:数据从数据源(比如:文件)到程序(或内存)的流动过程。
输出流:数据从程序(或内存)到数据源(比如:文件)的流动过程。
当我们提到输入时,这意味着要向程序(或内存)中写入一些数据。输入的数据来源可以是从键盘
中、从文件
中或从网络
中。C 语言提供了一系列内置的函数
来读取给定的输入,并根据需要写入到程序中。
当我们提到输出时,这意味着要在屏幕
上、打印机
上或任意文件中
显示(或保存)一些数据。同样,C 语言提供了一系列内置的函数
来输出数据到指定的载体上。
C 语言把所有的设备都当作文件。所以设备(比如显示器)被处理的方式与文件相同。以下三个文件会在程序执行时自动打开,以便访问键盘和屏幕。
标准文件 | 文件指针 | 设备 |
---|---|---|
标准输入 | stdin | 键盘 |
标准输出 | stdout | 屏幕 |
标准错误 | stderr | 屏幕 |
文件指针是访问文件的方式,我们会讲解如何从屏幕读取值以及如何把结果输出到屏幕上。
C 语言中的 I/O (输入/输出)通常使用printf()
和scanf()
两个函数。
int scanf(const char *format, ...)
函数从标准输入流 stdin 读取输入,并根据提供的 format 来浏览输入。int printf(const char *format, ...)
函数把输出写入到标准输出流 stdout ,并根据提供的格式产生输出。其中,format 可以是一个简单的常量字符串,但是您可以分别指定 %s、%d、%c、%f 等来输出或读取字符串、整数、字符或浮点数。如需了解完整的细节,可以查看这些函数的参考手册。
举例1:将内容输出到屏幕
#include <stdio.h> // 执行printf() 函数需要该库
int main(){
printf("hello"); //显示引号中的内容
return 0;
}
举例2:
#include <stdio.h>
int main( ) {
char str[100