【发布时间】:2014-11-10 02:51:23
【问题描述】:
我试图通过尝试执行以下代码段在 C 中创建一个文件,但我得到一个“未定义标识符”mkdir“。我正在使用 Visual Studio 在 Windows 机器上工作。
#include<stdio.h>
#include<sys/types.h>
#include<sys/stat.h>
int main()
{
char newTempFolderName[50];
int a = mkdir("./newTempFolderName", 0700);
return 0;
}
【问题讨论】:
-
它在 ubuntu 中工作。在你的程序中需要什么字符数组..因为你没有使用数组。如果想为数组内容创建目录,首先初始化或扫描数组,然后在'mkdir'系统调用中使用数组,如'mkdir(newTempFolderName,07000 )。
-
@PaulR:上次我检查时,mkdir 不在 C 标准中?
-
@HarryJohnston:我不确定 C,但它是 POSIX 的一部分。
-
@PaulR:当然,但 POSIX 是 UNIX 标准。将 Windows 称为“非标准”,因为它没有实现 POSIX,就像调用 Java 非标准,因为它没有实现 C11。 :-)
标签: c windows visual-studio-2012 mkdir