Personally, I think you should just open the two files in main() and then pass them to the other functions.
If you really badly want to do it the other way, then you have to create a regular FILE * in main() and pass it's address via the & operator.
Edit: Another alternative is to make your read and write functions return a FILE * instead of accept one. That way in main() you can just do something like:
Code:
int main(void)
{
FILE *in = readFile(...);
...
}
...
FILE *readFile(char determin)
{
...
}
If the function readFile() fails, you can return NULL. Then inside main(), you can check the value of the FILE * returned and see if there was an error by whether or not it's NULL.