Defined in header
char* tmpnam( char* filename );
Creates a unique filename that does not name a currently existing file, and stores it in the character string pointed to by filename. The function is capable of generating up to TMP_MAX of unique filenames, but some or all of them may already be in use, and thus not suitable return values.
std::tmpnam modifies static state and is not required to be thread-safe.
|pointer to the character array capable of holding at least L_tmpnam bytes, to be used as a result buffer. If a null pointer is passed, a pointer to an internal static buffer is returned
 Return value
filename if filename was not a null pointer. Otherwise a pointer to an internal static buffer is returned. If no suitable filename can be generated, a null pointer is returned.
Although the names generated by std::tmpnam are difficult to guess, it is possible that a file with that name is created by another process between the moment std::tmpnam returns and the moment this program attempts to use the returned name to create a file. The standard function std::tmpfile and the POSIX function
mkstemp do not have this problem (creating a unique directory using only the standard C library still requires the use of
temporary file name: /tmp/fileDjwifs temporary file name: /tmp/fileEv2bfW
 See also
| creates and opens a temporary, auto-removing file
| returns a directory suitable for temporary files
C documentation for tmpnam