MKTEMP(3C) Standard C Library Functions MKTEMP(3C)
NAME
mktemp - make a unique file name from a template
SYNOPSIS
#include <stdlib.h>
char *mktemp(
char *template);
DESCRIPTION
The
mktemp() function replaces the contents of the string pointed to
by
template with a unique file name, and returns
template. The string
in
template should look like a file name with six trailing 'X's;
mktemp() will replace the 'X's with a character string that can be
used to create a unique file name. Only 26 unique file names per
thread can be created for each unique
template.
RETURN VALUES
The
mktemp() function returns a pointer to the
template on success
and
NULL if unique name cannot be created.
ERRORS
No errors are defined.
EXAMPLES
Example 1: Generate a filename.
The following example replaces the contents of the "template" string
with a 10-character filename beginning with the characters "file" and
returns a pointer to the "template" string that contains the new
filename.
#include <stdlib.h>
...
char template[] = "/tmp/fileXXXXXX";
char *ptr;
ptr = mktemp(template);
USAGE
Between the time a pathname is created and the file opened, it is
possible for some other process to create a file with the same name.
The
mkstemp(3C) function avoids this problem and is preferred over
this function.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
|MT-Level | Safe |
+--------------------+-----------------+
SEE ALSO
mkstemp(3C),
tmpfile(3C),
tmpnam(3C),
attributes(7),
standards(7) September 15, 2004 MKTEMP(3C)