![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
The analog to gets
for reading a line directly from a file is
fgets
, an acronym for file get string:
fgets(name of character array, maximum characters to be read + 1, file-pointer name)
Like gets
, the fgets
function generally returns a pointer to
the first character in the character array, but should the fgets
function encounter the end of a file, it returns NULL
. Unlike
gets
, fgets
stops when it either reaches the end of a line or
has read the maximum number of characters. If fgets
does reach the
end of a line, fgets
copies an end-of-line character into the array,
just before the terminating \0
, which appears in the character array
no matter what.
Thus, you can read the next line of input from a file into the
input_buffer
array with the following statement:
*-- You do not want more characters than | input_buffer can hold v fgets(input_buffer, 100, trade_source); ^ | *-- A file pointer, set up by FILE*