##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# tmpfile

From cppreference.com
< c‎ | io

Defined in header `<stdio.h>` |  |
FILE *tmpfile(); |  |

Opens a temporary file. The file is opened as binary file for update (`"wb+` mode). The filename of the file is guaranteed to be unique within the filesystem.

The file will be closed when the program exits.

### [edit] Parameters

(none)

### [edit] Return value

The associated file stream or NULL if an error has occurred

### [edit] Example

tmpfile with error checking. Code opens a temporary file with mode "wb+".

Run this code

    #include <stdio.h>
    #include <stdlib.h>

    int main(void)
    {
        FILE* tmpf = tmpfile();   /* mode: "wb+" */
        if (tmpf == NULL)
        {
           perror("tmpfile()");
           fprintf(stderr,"tmpfile() failed in file %s at line # %d", __FILE__,__LINE__-4);
           exit(EXIT_FAILURE);
        }
        fputs("Hello, world", tmpf);
        rewind(tmpf);
        char buf[6];
        fgets(buf, sizeof buf, tmpf);
        printf("%s\n", buf);

        return EXIT_SUCCESS;
    }

Output:

    Hello

### [edit] See also

tmpnam | returns a unique filename (function) [edit]
C++ documentation for tmpfile

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=c/io/tmpfile&oldid=69943"