使fopen()从某个目录中打开文件

我有一个类似的function

FILE *file1 = fopen("testing.txt", "r"); 

我不能修改这一行。 但是,如果我在/tmp创建名为“testing.txt”的文件,我是否能够使该函数从/tmp而不是它自己的目录加载文件。 (也许通过修改PATH变量?)

如果程序没有更改自己的工作目录,你可以进入/tmp并从那里运行程序。

 $ cd /tmp $ /absolute/path/to/my_program 

这将打开您当前工作目录中的文件。

您可以使用chdir更改当前工作目录。

看到这个 。

这是使用C代码。

你也可以用cd

例如,转到终端:

 $ cd /tmp $ cd /path_to_your_program 

此外, cd ..将使您进入上面的目录, cd将使您转到主目录。

此外,如果您没有在必须编译它的目录中的程序,您可以使用cp复制文件。

 $ cp /path_to_copy_from /path_to_copy_to 

然后你可以去那个目录,然后从那里运行它。

我建议你学习这样一个基本的linux教程。