mkdir函数
时间: 2023-10-18 10:15:55 浏览: 33
mkdir是一个函数,用于在指定的路径下创建一个新的目录。该函数的完整声明如下:
```c
int mkdir(const char* pathname, mode_t mode);
```
其中,pathname参数是要创建的目录的路径名,mode参数是新目录的权限。如果函数执行成功,将返回0,否则返回-1并设置errno变量来指示错误原因。例如,如果目录已经存在,则返回-1并将errno设置为EEXIST。如果权限设置失败,则返回-1并将errno设置为EACCES或EPERM等错误代码。
相关问题
c语言 mkdir函数
C语言中的mkdir函数用于创建一个新的目录。它的函数原型如下:
```c
#include <sys/stat.h>
int mkdir(const char *pathname, mode_t mode);
```
其中,`pathname`是要创建的目录路径名,`mode`是设置目录的访问权限。返回值为0表示成功创建目录,返回-1表示失败。
以下是一个示例代码:
```c
#include <sys/stat.h>
#include <stdio.h>
#include <errno.h>
int main() {
const char *path = "/path/to/new_directory";
int res = mkdir(path, 0777); // 设置权限为777
if (res == -1) {
perror("Error creating directory");
return errno;
}
printf("Directory created successfully\n");
return 0;
}
```
在上面的示例中,我们使用mkdir函数创建了一个名为new_directory的目录。如果创建失败,我们使用perror函数打印错误信息。
请注意,为了使用mkdir函数,你需要包含头文件`<sys/stat.h>`。并且根据需要设置合适的访问权限。
mkdir函数 c++
mkdir函数是C++中的一个标准库函数,用于创建一个新的目录。它的函数原型如下:
```cpp
#include <sys/stat.h>
#include <sys/types.h>
int mkdir(const char *path, mode_t mode);
```
使用该函数需要包含头文件 `<sys/stat.h>` 和 `<sys/types.h>`。`path` 参数是一个字符串,表示要创建的目录的路径。`mode` 参数是一个权限标志,用于指定创建的目录的权限。
调用 `mkdir` 函数会尝试创建指定路径的新目录。如果成功创建,则返回 0;如果出现错误,则返回 -1,并且可以通过检查全局变量 `errno` 来获取具体的错误信息。
以下是一个示例代码,演示如何使用 `mkdir` 函数创建一个名为 "mydir" 的新目录:
```cpp
#include <iostream>
#include <sys/stat.h>
#include <sys/types.h>
int main() {
const char* path = "mydir";
int status = mkdir(path, S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH);
if (status == 0) {
std::cout << "目录创建成功!" << std::endl;
} else {
std::cout << "目录创建失败!" << std::endl;
}
return 0;
}
```
在上述示例中,我们使用了 `S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH` 作为 `mode` 参数,表示创建的目录将具有读、写和执行权限(所有者、组和其他用户都具有只读权限和执行权限)。你可以根据自己的需求调整权限参数。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)