C 标准库 stdio.h 的使用攻略
C 标准库 stdio.h 包含了一些用于输入和输出的函数,该库提供了可以在控制台或文件中读取和写入数据的函数。下面是一些 stdio.h 最常用函数的说明。
打开文件
可以使用 fopen()
函数来打开一个文件。该函数需要两个参数:文件名和打开模式。
FILE *fopen(const char *filename, const char *mode);
- 文件名:要打开的文件名和路径。
- 打开模式:指定该文件如何打开的字符串,例如
"r"
表示以只读方式打开,"w"
以只写方式打开等。
例如,下面的代码打开文件 example.txt,并以写入方式打开它。
#include <stdio.h>
int main() {
FILE *fp = fopen("example.txt", "w");
if(fp == NULL) {
printf("无法打开文件。\n");
return 1;
}
fprintf(fp, "这是一行文字。\n");
fclose(fp);
return 0;
}
写文件
可以使用 fprintf()
函数来写入文件。该函数通常需要三个参数:文件指针、格式字符串和要写入的数据。
int fprintf(FILE *stream, const char *format, ...);
- 文件指针:使用
fopen()
打开文件后,需要将返回的文件指针作为fprintf()
函数的第一个参数传递。 - 格式字符串:控制输出格式的字符串。
- 要写入的数据:要写入文件的数据。
下面是一个示例,向 example.txt 文件写入一些数据:
#include <stdio.h>
int main() {
FILE *fp = fopen("example.txt", "w");
if(fp == NULL) {
printf("无法打开文件。\n");
return 1;
}
int num1 = 123;
float num2 = 3.14;
char str[] = "Hello, World!";
fprintf(fp, "整数:%d,小数:%f,字符串:%s\n", num1, num2, str);
fclose(fp);
return 0;
}
读文件
可以使用 fscanf()
函数来读取文件。该函数通常需要三个参数:文件指针、格式字符串和要读取的变量。
int fscanf(FILE *stream, const char *format, ...);
- 文件指针:使用
fopen()
打开文件后,需要将返回的文件指针作为fscanf()
函数的第一个参数传递。 - 格式字符串:控制读取格式的字符串。
- 要读取的变量:要读取文件的数据,需要使用取地址运算符
&
将其地址传递给fscanf()
函数。
下面是一个示例,从 example.txt 文件中读取一些数据:
#include <stdio.h>
int main() {
FILE *fp = fopen("example.txt", "r");
if(fp == NULL) {
printf("无法打开文件。\n");
return 1;
}
int num1;
float num2;
char str[100];
fscanf(fp, "整数:%d,小数:%f,字符串:%s\n", &num1, &num2, str);
printf("整数:%d,小数:%f,字符串:%s\n", num1, num2, str);
fclose(fp);
return 0;
}
以上是 fopen()
、fprintf()
、fscanf()
三个函数在 C 标准库 stdio.h 中的使用攻略。