gpt4 book ai didi

无法写入文件

转载 作者:太空宇宙 更新时间:2023-11-04 06:47:25 33 4
gpt4 key购买 nike

我有一个奇怪的问题,我正在构建一个 C 套接字服务器,我的服务器中包含 2 个文件,

在我试图写入我创建的文件的其中一个文件中,所以我的 server.c 中有 server.c 我有仅包含此功能的 Dir.c这是:

void writeFile(){
FILE* f;
f=fopen("test.txt","w");
fputs("hello",f);
}

见鬼,它创建了文件,但是当我打开它时它是空的,但是当我将这段代码复制到另一个文件并在那里运行时,我得到了我的文件,其中写入了值 hello,我完全不知道为什么会这样,这就是我编译程序的方式:

 gcc   Dir.c server.c -lpthread -o server

我很想得到一些帮助,因为我一无所知......

最佳答案

假设您的服务器在运行函数 writeFile 后继续运行,您不会关闭输出文件。输出在缓存中,尚未写入文件。

当您的程序退出时,文件会自动关闭。这可能是您在其他一些程序中使用此代码时的不同之处。

fputs("hello",f);之后添加fclose(f);关闭文件。

如评论中所述,您应该始终检查函数的返回码并处理错误。

关于无法写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56188351/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com