mkdir c++ 函数

2022-01-05 00:00:00 visual-studio-2008 c++

我需要在 VS 2008 中使用 mkdir c++ 函数,它接受两个参数,并且在 VS 2005 中已被弃用.

I need to use the mkdir c++ function in VS 2008 which takes two arguments and is deprecated from VS 2005.

但是我们的代码中使用了这个函数,我需要编写一个独立的产品(仅包含 mkdir 函数)来调试某些东西.

However this function is used in our code and I need to write a standalone product (containing only mkdir function) to debug something.

我需要导入哪些头文件?我使用了 direct.h,但是编译器抱怨该参数没有 2 个参数(原因是该函数在 VS 2005 中已被弃用).

What header files do I need to import? I used direct.h, however compiler complains that the argument does not take 2 arguments (reason for this is the function was deprecated in VS 2005).

mkdir("C:hello",0);

推荐答案

如果你想写跨平台的代码,可以使用 boost::filesystem 例程

If you want to write cross-platform code, you can use boost::filesystem routines

#include <boost/filesystem.hpp>
boost::filesystem::create_directory("dirname");

这确实添加了一个库依赖项,但您可能还会使用其他文件系统例程,并且 boost::filesystem 有一些很棒的接口.

This does add a library dependency but chances are you are going to use other filesystem routines as well and boost::filesystem has some great interfaces for that.

如果您只需要创建一个新目录,并且只打算使用 VS 2008,则可以使用 _mkdir(),正如其他人所指出的那样.

If you only need to make a new directory and if you are only going to use VS 2008, you can use _mkdir() as others have noted.

相关文章