在C语言中,数据库输入输出流主要涉及标准输入输出函数的使用以及文件操作相关的函数,以下是对这些内容的详细解释:
1、scanf
函数
功能:从标准输入设备(通常是键盘)读取数据,并根据指定的格式将数据存储到相应的变量中。
原型:int scanf(const char *format, ...)
示例:
int num; float fnum; printf("请输入一个整数和一个浮点数:"); scanf("%d %f", &num, &fnum); printf("你输入的整数是:%d,浮点数是:%f ", num, fnum);
说明:scanf
函数使用格式控制字符串来指定输入的格式,如%d
表示读取一个整数,%f
表示读取一个浮点数,格式控制字符串后的参数是变量的地址,用于存储读取的数据。
2、printf
函数
功能:向标准输出设备(通常是屏幕)输出数据,可以指定数据的格式和内容。
原型:int printf(const char *format, ...)
示例:
int num = 5; float fnum = 3.14; printf("整数:%d,浮点数:%f ", num, fnum);
说明:与scanf
函数类似,printf
函数也使用格式控制字符串来指定输出的格式,如%d
表示输出一个整数,%f
表示输出一个浮点数,格式控制字符串后是要输出的变量或常量。
3、getchar
和putchar
函数
getchar
函数
功能:从标准输入设备读取一个字符。
原型:int getchar(void)
示例:
char c; printf("请输入一个字符:"); c = getchar(); printf("你输入的字符是:%c ", c);
putchar
函数
功能:向标准输出设备输出一个字符。
原型:int putchar(int char)
示例:
char c = 'A'; putchar(c); // 输出结果为:A
1、文件指针
在C语言中,文件操作是通过文件指针来进行的,文件指针是一个指向FILE
类型的指针,FILE
类型定义了文件的一些信息,包括文件缓冲区、文件位置指针等。
定义文件指针的语法如下:
FILE *fp;
2、文件打开函数fopen
功能:打开一个文件,并返回一个文件指针,用于后续的文件操作,如果文件打开失败,返回NULL
。
原型:FILE *fopen(const char *filename, const char *mode)
参数说明:
filename
:要打开的文件名,可以是相对路径或绝对路径。
mode
:文件打开模式,常见的模式有:
"r"
:以只读方式打开文件,文件必须存在。
"w"
:以写入方式打开文件,如果文件不存在则创建一个新的文件,如果文件存在则清空文件内容。
"a"
:以追加方式打开文件,写入的数据会添加到文件末尾,如果文件不存在则创建一个新的文件。
"r+"
:以读写方式打开文件,文件必须存在。
"w+"
:以读写方式打开文件,如果文件不存在则创建一个新的文件,如果文件存在则清空文件内容。
"a+"
:以读写方式打开文件,写入的数据会添加到文件末尾,如果文件不存在则创建一个新的文件。
示例:
FILE *fp = fopen("example.txt", "r"); if (fp == NULL) { printf("无法打开文件 "); return -1; }
3、文件关闭函数fclose
功能:关闭一个打开的文件,释放文件指针所占用的资源。
原型:int fclose(FILE *stream)
参数说明:stream
是要关闭的文件指针。
返回值:成功返回0
,失败返回EOF
。
示例:
fclose(fp);
4、文件读写函数
fgetc
和fputc
函数
fgetc
函数
功能:从文件读取一个字符。
原型:int fgetc(FILE *stream)
示例:
char c; FILE *fp = fopen("example.txt", "r"); if (fp != NULL) { c = fgetc(fp); while (c != EOF) { putchar(c); c = fgetc(fp); } fclose(fp); }
fputc
函数
功能:向文件写入一个字符。
原型:int fputc(int char, FILE *stream)
示例:
FILE *fp = fopen("example.txt", "w"); if (fp != NULL) { fputc('A', fp); fputc('B', fp); fclose(fp); }
fgets
和fputs
函数
fgets
函数
功能:从文件中读取一行字符串,最多读取n-1
个字符,然后在末尾添加一个空字符