Join our newsletter for the latest updates.

C++ tmpfile()

The tmpfile() function in C++ creates and opens a temporary file in binary read/write (wb+) mode with a unique auto-generated filename.

The file will be automatically deleted when it is closed by the program(by executing fclose) or when the program terminates.

tmpfile() prototype

FILE* tmpfile();

It is defined in <cstdio> header file.

tmpfile() Parameters


tmpfile() Return value

  • If successful, it returns a stream pointer to the temporary file created.
  • On failure, it returns null.

Example: How tmpfile() function works

#include <iostream>
#include <cstdio>
#include <cstdlib>

using namespace std;

int main()
	FILE *fp;
	fp = tmpfile();
	char writeToFile[50] = "Creating a temporary file";
	if (fp==NULL)
		perror("Error creating temporary file");
	char readFromFile[50];
	fgets(readFromFile, sizeof(readFromFile), fp);
	cout << readFromFile;
	return 0;

When you run the program, the output will be:

Creating a temporary file
Did you find this article helpful?