📜  C中的fputs()和fgets()(1)

📅  最后修改于: 2023-12-03 15:30:14.473000             🧑  作者: Mango

C中的fputs()和fgets()

在C语言中,fputs()和fgets()函数分别用于输出和输入字符串。这两个函数都是标准库函数,可以在stdio.h头文件中找到。

fputs()

fputs()函数用于将一个字符串输出到指定的文件中。函数原型如下:

int fputs(const char *str, FILE *stream);

其中,str是要输出的字符串,stream是要输出到的文件指针。函数返回值为非负整数表示成功,否则表示失败。

下面是一个示范程序,它将字符串"Hello, World!"输出到一个名为output.txt的文件中:

#include <stdio.h>

int main() {
    FILE *fp;
    fp = fopen("output.txt", "w");
    
    if(fp == NULL) {
        printf("Failed to open file.");
        return 1;
    }
    
    fputs("Hello, World!", fp);
    
    fclose(fp);
    return 0;
}

在上面的程序中,我们先打开一个文件,并在文件中写入字符串。如果打开文件失败,我们将会在控制台显示错误信息。

fgets()

fgets()函数用于从指定的文件中读入一行字符串。函数原型如下:

char *fgets(char *str, int n, FILE *stream)

其中,str是读入的字符串,n是要读入的字符数,stream是要读入的文件指针。函数返回值为str,表示成功读入的字符串,如果遇到EOF或错误,则返回NULL。

下面是一个示范程序,它从一个名为input.txt的文件中读入一行字符串并在控制台中输出:

#include <stdio.h>

int main() {
    FILE *fp;
    char str[100];

    fp = fopen("input.txt", "r");

    if(fp == NULL) {
        printf("Failed to open file.");
        return 1;
    }

    if(fgets(str, 100, fp) != NULL) {
        printf("%s", str);
    }

    fclose(fp);
    return 0;
}

在上面的程序中,我们先打开了一个文件,并使用fgets()函数从文件中读入一行字符串。如果打开文件失败或读入错误,我们将会在控制台显示错误信息。