在c++中在当前目录中创建多个文件夹

creating multiple folders inside current directory in c++

本文关键字:文件夹 当前目录 c++ 创建      更新时间:2023-10-16

我想在c++中使用循环在当前目录中创建一些文件夹。我已经做了一个代码,但得到以下错误。

无法将'std::string{又名std::basic_string}'转换为'const char*',参数'1'转换为'void CreateFolder(const char*)'

我的代码是:
 #include<iostream>
 #include<cstdio>
 #include<cstring>
 #include <windows.h>
 #include <cstdio>
 #include<cstdlib>
 #include<fstream>
 #include <sstream>
 using namespace std;
#define total 28
std::string to_string(int i) {
   std::stringstream s;
   s << i;
   return s.str();
}

void CreateFolder(const char * path)
{
    if(!CreateDirectory(path ,NULL))
    {
        return;
    }
}

main()
{
    string folder_name;
    string suffix = ".\"; // for current directory
     for(int i=0;i<=total;i++)
    {
        folder_name=suffix+to_string(i);
        CreateFolder(folder_name);
    }
} 

我将如何创建那些名为0,1…28日吗?

不能直接将std::string传递为char*。使用c_str()函数可以从std::string中检索原始的char*

//std::string -> const char*
CreateFolder(folder_name.c_str());