C将文件指针传递给函数

时间:2013-01-25 13:47:56

标签: c file function pointers

我在传递文件指针时遇到问题。如果函数中有一个带有文件指针的函数(我的代码中是void writequest),我该如何传递它?在我输入void writequest之前它正在工作。程序本身应该从一个充满电影名称的文件中读取,然后将它们放入另一个文件中。当然,请随意注意我的代码中的任何其他失败。

void writequest(int no)
{
    int i, j, loop_ctrl, destination;
    int movement;
    char lib[loop_ctrl+1][92];
    int write_nr[loop_ctrl], sorting[destination];
    char searching[92];
    char *c;
    FILE *watched;
    FILE *temp;
    FILE *refrom;
    FILE *reto;
    FILE *towatch;
    if(no==1)
    {
        printf("No match found.\n");
    }
    else if(no==0)
    {
        printf("Do you wish you write them into a file?\n1 - Yes\n0 - No\n");
        scanf("%d", &j);
        if(j==1)
        {
            tofile(watched, temp, refrom, reto, destination, loop_ctrl, write_nr, lib, movement);
            close(towatch, watched, temp, refrom, reto);
            remove("To_watch.txt");
            rename("temp.txt", "To_watch.txt");
        }
        else if(j==0)
        {
            printf("Alright then\n");
            close(towatch, watched, temp, refrom, reto);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

  char *c;
    FILE *watched;
    FILE *temp;
    FILE *refrom;
    FILE *reto;
    FILE *towatch;

这些都是指针。因此,如果你在函数中调用它们,那么就要求它们内部的价值。那是他们的地址。除了运动。有点奇怪。

在任何人说出问题所在之前,了解其功能至关重要。