c - 简单的 fputs() 示例返回 EOF

标签 c fputs

这个简单的程序,在 fgets() 中给我带来麻烦,返回 EOF,这是 fgets() 的错误值 不明白问题出在哪里

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

FILE* openFile(const char* path)
{
    FILE* file;
    file = fopen(path, "r");
    if(file == NULL)
    {
        perror(path);
        exit(EXIT_FAILURE);
    }
    return file;
}


int main()
{
    FILE* file;
    char stringVector[6] = "hello";
    file = openFile("/home/user/workspace/fputs/src/testo.txt");

    if(fputs(&stringVector[0], file) == EOF)
    {
        printf("error in fputs");
        fclose(file);
        exit(EXIT_FAILURE);
    }

    fclose(file);
    return 0;
}

最佳答案

您正在打开文件进行读取,但仍试图向其中写入数据?这没有意义。

关于c - 简单的 fputs() 示例返回 EOF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14755121/

相关文章:

c++ - 我们是否需要互斥量来执行多线程文件 IO

php文件写入问题

foxpro - 如何将光标的数据写入txt文件中?视觉狐狸专业版

c++ - 如何用 C 或 C++ 计算文件的哈希值?

c - 使用带有多个参数的 execlp 运行 linux 命令作为 c 中的字符串

c++ - 我们是否需要在 x86 上彼得森锁的 unlock() 函数中使用 mfence?

c - C 中的非 ASCII 字符

c - 尝试写入文件

php - 使用 fsockopen 重写一些代码以使用 curl 代替

在 Windows 的 Xcode 中编译(控制台)