I know everybody has told me to use fgets and not gets because of buffer overflow. However, I am a bit confused about the third parameter in fgets()
. As I unde
You are correct. stream
is a pointer to a FILE
structure, like that returned from fopen
. stdin
, stdout
, and stderr
are already defined for your program, so you can use them directly instead of opening or declaring them on your own.
For example, you can read from the standard input with:
fgets(buffer, 10, stdin);
Or from a specific file with:
FILE *f = fopen("filename.txt", "r");
fgets(buffer, 10, f);