passing FILE as argument in c
To pass a FILE
as an argument in C, you can use the FILE
data type. The FILE
type represents a stream in C, and the FILE
is a pointer to a FILE
object.
Here's an example of how you can pass a FILE*
as an argument in a C function:
#include <stdio.h>
void myFunction(FILE* file) {
// Use the file pointer to perform operations on the file
// For example, you can use functions like fscanf, fprintf, etc.
fprintf(file, "Hello, world!");
}
int main() {
FILE* file = fopen("myfile.txt", "w"); // open the file in write mode
if (file != NULL) {
myFunction(file); // pass the file pointer to the function
fclose(file); // close the file when done
} else {
printf("Failed to open file!");
}
return 0;
}
In this example, the myFunction
takes a FILE*
argument called file
. Inside the function, you can use the file
pointer to perform operations on the file, such as writing data using fprintf
. The main
function opens the file in write mode, checks if it was successfully opened, and then calls myFunction
with the file
pointer. After using the file, it is important to close it using fclose
.
Remember to include the stdio.h
header file at the beginning of your program to use the file-related functions.