C++ 列出指定目录下的文件夹名 并存到字符串数组中解决方案

C++ 列出指定目录下的文件夹名 并存到字符串数组中
RT    比如说一个目录D:\test   我只想获取它里面第一层中的文件夹名    并且将它们存到字符数组中  怎么弄   求高手指点    最好有详细代码
目录

------解决方案--------------------
#include<iostream>
#include<string>
#include<io.h>
#include<stdio.h>
using namespace std;
void filesearch(string path,int layer)
{
int num=0;
string dirname[100]={""};
struct _finddata_t filefind;
string curr=path+"\\*.*";
int done=0,i=0,j,handle;
if((handle=_findfirst(curr.c_str(),&filefind))==-1)return;
while(!(done=_findnext(handle,&filefind)))
{
if ((_A_SUBDIR==filefind.attrib))
dirname[num++]=filefind.name;
}  
for (j=0;j<=num;j++)
{
cout<<dirname[j]<<endl;
}
_findclose(handle);      
}
int listfile()
{  
string path="D:\\Test";
filesearch(path,0);
return 0;
}
int main()
{
listfile();
system("PAUSE");
return 0;
}

试试看