我正在使用 Eclipse 开发一个中等大小的程序,我无法显示内容,因为它太大了。在某些时候,我有几行 fopen
,我基本上是在尝试创建一个新文件并在该文件中打印从某些处理中派生的内容。
所以我的台词有点像经典
FILE* f = fopen(filename,"w");
其中 filename
是一个足够大的字符数组。然而,返回的 FILE*
是 0,当我检查 errno
时,它是数字 2
,这意味着该文件不存在。
不过这就是重点,我正在尝试创建一个新文件。 您有什么建议可以让我进一步检查吗?
值得注意的是我在 unix 上运行这些东西,而不是在 windows 上。
最佳答案
filename的值是绝对路径还是相对路径?如果是后者,那么您运行的进程可能没有您认为的 cwd(当前工作目录)。
- 尝试使用绝对路径,如果可行的话
- 在main开始时使用chdir系统调用设置cwd
关于c++ - 无法使用 eclipse cdt 在 C/C++ 中打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38396815/