Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在tmp文件夹c语言Mac OS X中创建临时文件夹_C_Macos - Fatal编程技术网

在tmp文件夹c语言Mac OS X中创建临时文件夹

在tmp文件夹c语言Mac OS X中创建临时文件夹,c,macos,C,Macos,如何在/tmp目录中创建临时文件夹。尝试该功能 char *tmpdir; strcpy (template, "/tmp/myprog.XXXXXX"); tmpdir = mkdtemp (template); if (!tmpdir) { // Error out here } printf ("Temporary directory created : %s", tmpdir); 因为我还不能改变/改进别人的答案,所以我自己写了一个 我会使用stat和mkdir。例如: #

如何在/tmp目录中创建临时文件夹。

尝试该功能

char *tmpdir;
strcpy (template, "/tmp/myprog.XXXXXX");
tmpdir = mkdtemp (template);

if (!tmpdir) {
    // Error out here
}

printf ("Temporary directory created : %s", tmpdir);

因为我还不能改变/改进别人的答案,所以我自己写了一个

我会使用
stat
mkdir
。例如:

#include <errno.h> // for errno
#include <stdio.h> // for printf
#include <stdlib.h> // for EXIT_*
#include <string.h> // for strerror
#include <sys/stat.h> // for stat and mkdir

int main() {
    const char *mydir = "/tmp/mydir";
    struct stat st;
    if (stat(mydir, &st) == 0) {
        printf("%s already exists\n", mydir);
        return EXIT_SUCCESS;
    }
    if (mkdir(mydir, S_IRWXU|S_IRWXG) != 0) {
        printf("Error creating directory: %s\n", strerror(errno));
        return EXIT_FAILURE;
    }
    printf("%s successfully created\n", mydir);
    return EXIT_SUCCESS;
}
\include//for errno
#包括//用于printf
#包含//以退出_*
#包括//用于strerror
#包括//用于stat和mkdir
int main(){
const char*mydir=“/tmp/mydir”;
结构统计;
if(stat(mydir,&st)==0){
printf(“%s已存在\n”,mydir);
返回退出成功;
}
if(mkdir(mydir,S|u IRWXU | S|u IRWXG)!=0){
printf(“创建目录时出错:%s\n”,strerror(errno));
返回退出失败;
}
printf(“%s已成功创建\n”,mydir);
返回退出成功;
}

“mkdtemp()函数从模板生成一个唯一命名的临时目录。模板的最后六个字符必须是XXXXXX,并且这些字符被替换为使目录名唯一的字符串。”--问题没有问这些字符specifications@Sev:也不丢弃。如果OP不关心唯一的命名,他仍然可以使用
mkdir
。在我看来,启动一个只创建一个目录的过程有点夸张了。你会更新你的示例,将返回值分配给一个变量吗?我们明白这个想法,但OP可能不会(这里没有不尊重)。我发现关于
mkdir
的问题也很重要。我看到你之前已经问过这个问题----你应该更新这个问题,而不是再发布一次。