gets(3S)gets(3S)NAMEgets(), fgets() - get a string from a stream
Reads characters from the standard input stream,
into the array pointed to by s, until a new-line charac‐
ter is read or an end-of-file condition is encountered.
The new-line character is discarded and the string is
terminated with a null character.
Reads characters from the
stream into the array pointed to by s, until n−1 charac‐
ters are read, a new-line character is read and trans‐
ferred to s, or an end-of-file condition is encountered.
The string is then terminated with a null character.
gets a string from a stream.
After or is applied to a stream, the stream becomes byte-oriented (see
Upon successful completion, and return s. If the stream is at end-of-
file, the end-of-file indicator for the stream is set and a null
pointer is returned.
When the file corresponding to an open stream gets extended after the
end-of-file is reached, any subsequent calls to these functions will
succeed and the end-of-file indicator will remain set. However, in the
UNIX2003 standards environment (see standards(5)), these functions will
return a null pointer and the end-of-file indicator will still remain
If a read error occurs, the error indicator for the stream is set, is
set to indicate the error, and a null pointer is returned.
and can be used to distinguish between an error condition and an end-
and fail if data needs to be read into the stream's buffer, and:
The flag is set for the file descriptor underlying stream
and the process would be delayed in the read operation.
The file descriptor underlying
stream is not a valid file descriptor open for reading.
The read operation was terminated due to the receipt of a signal,
and either no data was transferred or the implementation
does not report partial transfer for this file.
The process is a member of a background process
and is attempting to read from its controlling terminal,
and either the process is ignoring or blocking the sig‐
nal or the process group of the process is orphaned.
Additional values can be set by the underlying function (see read(2)).
is an obsolescent interface supported only for compatibility with
existing DCE applications. New multithreaded applications should use
SEE ALSOferror(3S), flockfile(3S), fopen(3S), fread(3S), getc(3S), puts(3S),
scanf(3S), orientation(5), standards(5), thread_safety(5), glossary(9).