*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->NetBSD man pages -> gets (3)              
Title
Content
Arch
Section
 

FGETS(3)

Contents


NAME    [Toc]    [Back]

     fgets, gets - get a line from a stream

LIBRARY    [Toc]    [Back]

     Standard C Library (libc, -lc)

SYNOPSIS    [Toc]    [Back]

     #include <stdio.h>

     char *
     fgets(char * restrict str, int size, FILE * restrict stream);

     char *
     gets(char *str);

DESCRIPTION    [Toc]    [Back]

     The fgets() function reads at most one less than the number of characters
     specified by size from the given stream and stores them in the string
     str.  Reading stops when a newline character is found, at end-of-file or
     error.  The newline, if any, is retained.  In any case a `\0' character
     is appended to end the string.

     The gets() function is equivalent to fgets() with an infinite size and a
     stream of stdin, except that the newline character (if any) is not stored
     in the string.  It is the caller's responsibility to ensure that the
     input line, if any, is sufficiently short to fit in the string.

RETURN VALUES    [Toc]    [Back]

     Upon successful completion, fgets() and gets() return a pointer to the
     string.  If end-of-file or an error occurs before any characters are
     read, they return NULL.  The fgets() and functions gets() do not distinguish
 between end-of-file and error, and callers must use feof(3) and
     ferror(3) to determine which occurred.

ERRORS    [Toc]    [Back]

     [EBADF]            The given stream is not a readable stream.

     The function fgets() may also fail and set errno for any of the errors
     specified for the routines fflush(3), fstat(2), read(2), or malloc(3).

     The function gets() may also fail and set errno for any of the errors
     specified for the routine getchar(3).

SEE ALSO    [Toc]    [Back]

      
      
     feof(3), ferror(3), fgetln(3)

STANDARDS    [Toc]    [Back]

     The functions fgets() and gets() conform to ANSI X3.159-1989
     (``ANSI C'').

SECURITY CONSIDERATIONS    [Toc]    [Back]

     Since it is usually impossible to ensure that the next input line is less
     than some arbitrary length, and because overflowing the input buffer is
     almost invariably a security violation, programs should NEVER use gets().
     The gets() function exists purely to conform to ANSI X3.159-1989
     (``ANSI C'').

BSD                              June 4, 1993                              BSD
[ Back ]
 Similar pages
Name OS Title
puts OpenBSD output a line to a stream
puts FreeBSD output a line to a stream
fputs FreeBSD output a line to a stream
puts NetBSD output a line to a stream
fputs NetBSD output a line to a stream
fputs OpenBSD output a line to a stream
fgetws FreeBSD get a line of wide characters from a stream
fparseln OpenBSD return the next logical line from a stream
fparseln FreeBSD return the next logical line from a stream
fparseln NetBSD return the next logical line from a stream
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service