MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Standard C Library Functions                           fclose(3C)



NAME
     fclose - close a stream

SYNOPSIS
     #include 

     int fclose(FILE *stream);


DESCRIPTION
     The fclose() function causes the stream pointed to by stream
     to  be  flushed  and  the  associated file to be closed. Any
     unwritten buffered data for the stream  is  written  to  the
     file;  any  unread buffered data is discarded. The stream is
     disassociated from the file. If the  associated  buffer  was
     automatically allocated, it is deallocated.


     The fclose() function marks  for  update  the  stctime  and
     stmtime  fields  of  the  underlying  file if the stream is
     writable and if buffered data has not yet  been  written  to
     the  file.  It will perform a close(2) operation on the file
     descriptor that is associated with the stream pointed to  by
     stream.


     After the call to fclose(), any use of stream  causes  unde-
     fined behavior.


     The fclose() function is  performed  automatically  for  all
     open files upon calling exit(2).

RETURN VALUES
     Upon successful completion, fclose() returns  0.  Otherwise,
     it returns EOF and sets errno to indicate the error.

ERORS
     The fclose() function will fail if:

     EAGAIN    The ONONBLOCK flag is set for the file descriptor
               underlying stream and the process would be delayed
               in the write operation.


     EBADF     The  file  descriptor  underlying  stream  is  not
               valid.


     EFBIG     An attempt was made to write a file  that  exceeds
               the  maximum  file size or the process's file size
               limit; or the  file  is  a  regular  file  and  an



SunOS 5.11           Last change: 1 Nov 2003                    1






Standard C Library Functions                           fclose(3C)



               attempt  was made to write at or beyond the offset
               maximum associated with the corresponding stream.


     EINTR     The fclose() function was interrupted by a signal.


     EIO       The process is a member of  a  background  process
               group  attempting to write to its controlling ter-
               minal, TOSTOP  is  set,  the  process  is  neither
               ignoring  nor  blocking  SIGTOU  and  the process
               group of the process is orphaned.


     ENOSPC    There was no free space remaining  on  the  device
               containing the file.


     EPIPE     An attempt is made to write to a pipe or FIFO that
               is  not open for reading by any process. A SIGPIPE
               signal will also be sent to the calling thread.



     The fclose() function may fail if:

     ENXIO    A request was made of a non-existent device, or the
              request was beyond the limits of the device.


ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Standard                    
    
     MT-Level                     MT-Safe                     
    


SEE ALSO
     close(2),  exit(2),  getrlimit(2),   ulimit(2),   fopen(3C),
     stdio(3C), attributes(5), standards(5)







SunOS 5.11           Last change: 1 Nov 2003                    2



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™