C 标准库 stdio.h

  • Post category:C

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 中的使用攻略。