### 6.8 `tmpfile64`—create a large temporary file ¶

Synopsis

    #include <stdio.h>
    FILE *tmpfile64(void);

    FILE *_tmpfile64_r(void *reent);

Description
Create a large temporary file (a file which will be deleted automatically), using a name generated by `tmpnam`. The temporary file is opened with the mode `"wb+"`, permitting you to read and write anywhere in it as a binary file (without any data transformations the host system may perform for text files). The file may be larger than 2GB.

The alternate function `_tmpfile64_r` is a reentrant version. The argument reent is a pointer to a reentrancy structure.

Both `tmpfile64` and `_tmpfile64_r` are only defined if __LARGE64_FILES is defined.

Returns
`tmpfile64` normally returns a pointer to the temporary file. If no temporary file could be created, the result is NULL, and `errno` records the reason for failure.

Portability
`tmpfile64` is a glibc extension.

Supporting OS subroutines required: `close`, `fstat`, `getpid`, `isatty`, `lseek64`, `open64`, `read`, `sbrk`, `write`.

`tmpfile64` also requires the global pointer `environ`.