gets(3S) DG/UX R4.11MU05 gets(3S)
NAME
gets, fgets - get a string from a stream
SYNOPSIS
#include <stdio.h>
char *gets (char *s);
char *fgets (char *s, int n, FILE *stream);
DESCRIPTION
gets reads characters from the standard input stream [see intro(3)],
stdin, into the array pointed to by s, until a newline character is
read or an end-of-file condition is encountered. The newline
character is discarded and the string is terminated with a null
character.
fgets reads characters from the stream into the array pointed to by
s, until n -1 characters are read, or a newline character is read and
transferred to s, or an end-of-file condition is encountered. The
string is then terminated with a null character.
When using gets, if the length of an input line exceeds the size of
s, indeterminate behavior may result. For this reason, it is
strongly recommended that gets be avoided in favor of fgets.
Errors
If end-of-file is encountered and no characters have been read, no
characters are transferred to s and a null pointer is returned. If a
read operation was attempted, and an error occurs, such as trying to
use these functions on a file that has not been opened for reading, a
null pointer is returned. If end-of-file is encountered, the EOF
indicator for the stream is set. Otherwise s is returned.
Considerations for Threads Programming
+---------+-----------------------------+
| | async- |
|function | reentrant cancel cancel |
| | point safe |
+---------+-----------------------------+
|fgets | Y Y N |
|gets | Y Y N |
+---------+-----------------------------+
REFERENCES
lseek(2), read(2), reentrant(3), ferror(3S), fopen(3S), fread(3S),
getc(3S), scanf(3S), stdio(3S), ungetc(3S)
Licensed material--property of copyright holder(s)