Originální popis anglicky: 
tmpfile - create a temporary file
Návod, kniha: POSIX Programmer's Manual
#include <stdio.h>
 
 
FILE *tmpfile(void);
 
The 
tmpfile() function shall create a temporary file and open a
  corresponding stream. The file shall be automatically deleted when all
  references to the file are closed. The file is opened as in 
fopen() for
  update ( 
w+).
In some implementations, a permanent file may be left behind if the process
  calling 
tmpfile() is killed while it is processing a call to
  
tmpfile().
An error message may be written to standard error if the stream cannot be
  opened.
Upon successful completion, 
tmpfile() shall return a pointer to the
  stream of the file that is created. Otherwise, it shall return a null pointer
   and set 
errno to indicate the error.
The 
tmpfile() function shall fail if:
  - EINTR
 
  - A signal was caught during tmpfile().
 
  - EMFILE
 
  - {OPEN_MAX} file descriptors are currently open in the
      calling process.
 
  - ENFILE
 
  - The maximum allowable number of files is currently open in
      the system.
 
  - ENOSPC
 
  - The directory or file system which would contain the new
      file cannot be expanded.
 
  - EOVERFLOW
 
  - The file is a regular file and the size of the file cannot
      be represented correctly in an object of type off_t.
    
 
   
The 
tmpfile() function may fail if:
  - EMFILE
 
  - {FOPEN_MAX} streams are currently open in the calling
      process.
 
  - ENOMEM
 
  - Insufficient storage space is available.
    
 
   
The following sections are informative.
The following example creates a temporary file for update, and returns a pointer
  to a stream for the created file in the 
fp variable.
 
#include <stdio.h>
...
FILE *fp;
 
fp = tmpfile ();
 
It should be possible to open at least {TMP_MAX} temporary files during the
  lifetime of the program (this limit may be shared with 
tmpnam()) and
  there should be no limit on the number simultaneously open other than this
  limit and any limit on the number of open files ( {FOPEN_MAX}).
None.
None.
fopen() , 
tmpnam() , 
unlink() , the Base Definitions volume
  of IEEE Std 1003.1-2001, 
<stdio.h>
Portions of this text are reprinted and reproduced in electronic form from IEEE
  Std 1003.1, 2003 Edition, Standard for Information Technology -- Portable
  Operating System Interface (POSIX), The Open Group Base Specifications Issue
  6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics
  Engineers, Inc and The Open Group. In the event of any discrepancy between
  this version and the original IEEE and The Open Group Standard, the original
  IEEE and The Open Group Standard is the referee document. The original
  Standard can be obtained online at http://www.opengroup.org/unix/online.html
  .