是否可以在 C 中检索文件名?如果创建的文件如下所示:
FILE *f = fopen ("foo.txt", "r");
“foo.txt”来自一个超出范围的变量。有没有办法从 FILE 结构中检索它?
最佳答案
事实上,您不能从FILE
对象中检索文件名。
但是,如果传递给 fopen
的名称对您很重要,并且该变量出于某种原因超出范围,您总是可以将 FILE*
包装在一个结构,即。
struct file_with_name {
FILE *f;
char *name; /* OR char name[MAX] */
}
至少那是我会做的,但这取决于您实际尝试做的事情。
关于c - 如何从 C 中的 FILE* 结构中获取文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7988784/