gpt4 book ai didi

c - 简单的 C 程序打开一个文件

转载 作者:太空狗 更新时间:2023-10-29 17:06:08 25 4
gpt4 key购买 nike

我正在尝试编写一个程序来打开一个名为“write.txt”的文件。

#include <stdio.h>

main() {
FILE *fp;
fp = fopen("write.txt", "w");
return 0;
}

这应该有效吗?因为它什么都不返回。

最佳答案

除了 main 的旧变体,该代码实际上并没有很多错误。如果没有错误,它应该会创建文件。

但是,由于您没有检查 fopen 的返回值,您可能会遇到某种错误而自己却不知道。

我会开始:

#include <stdio.h>
#include <errno.h>
int main (void) {
FILE *fp;
fp = fopen ("write.txt","w");
if (fp == NULL) {
printf ("File not created okay, errno = %d\n", errno);
return 1;
}
//fprintf (fp, "Hello, there.\n"); // if you want something in the file.
fclose (fp);
printf ("File created okay\n");
return 0;
}

如果您坚持认为文件没有被创建,但上面的代码说它是,那么您可能是可怕的“IDE 正在与您认为的目录不同的目录中工作”综合症的受害者:-)

某些 IDE(例如 Visual Studio)实际上会在您的代码位于 <solution-name>\bin 这样的目录中时运行它们。或 <solution-name>\debug .你可以通过输入找到:

system ("cd"); // for Windows
system ("pwd") // for UNIXy systems

进入您的代码以查看其运行位置。 这就是 如果您指定相对路径行 "write.txt" 将创建文件的位置.否则,您可以指定绝对路径以确保它尝试在文件系统中的特定点创建它。

关于c - 简单的 C 程序打开一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5012126/

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