关于QT上编译运行报错的问题 2C

最近在编写一个试验程序,中间需要用到读取一个文件夹中全部txt文件的操作,便谢了个小程序返回指定文件夹下所有txt文件名的小程序,开始用QT编译运行,才输出一行就报错 截图如下图一二:
开始一直以为是自己程序的问题,检查觉得没错,就用DevC++编译了一下 能够成功运行并输出,截图如下图三
求问大神,这是什么问题呢 并求解决办法 谢谢

附加我的代码:

 #include <stdio.h>
#include <io.h>
#include <iostream>
#include <string>
using namespace std;

const char *to_search="D:\\FileTest\\test\\*.txt";        //欲查找的文件,支持通配符


int main()
{
     string location_base="D:\\FileTest\\test\\";
     string location[4];

     long handle;                                                //用于查找的句柄
     struct _finddata_t fileinfo;                               //文件信息的结构体
     handle=_findfirst(to_search,&fileinfo);                    //第一次查找
     int i=0;

     if(-1==handle)return -1;
     printf("%s\n",fileinfo.name);                              //打印出找到的文件的文件名
     location[i]=location_base;
     location[i].append(fileinfo.name);
     cout<<location[i]<<endl;

     while(_findnext(handle,&fileinfo)==0)                      //循环查找其他符合的文件,知道找不到其他的为止
     {
         i++;
         printf("%s\n",fileinfo.name);
         location[i]=location_base;
         location[i].append(fileinfo.name);
         cout<<location[i]<<endl;
    }
     _findclose(handle);                                      //关闭句柄

     return 0;
}

图片说明图片说明
图片说明

2个回答

#include
#include
#include
#include
#include
using namespace std;

const char to_search=".\"; //欲查找的文件,支持通配符

int main()
{
string location_base=".\";
vector location;

long handle;                                                //用于查找的句柄
struct _finddata_t fileinfo;                               //文件信息的结构体
handle=_findfirst(to_search,&fileinfo);                    //第一次查找
int i=0;

if(-1==handle)return -1;
printf("%s\n",fileinfo.name);                              //打印出找到的文件的文件名
cout<<location_base+fileinfo.name<<endl;
location.push_back(location_base+fileinfo.name);
while(_findnext(handle,&fileinfo)==0)                      //循环查找其他符合的文件,知道找不到其他的为止
{
    printf("%s\n",fileinfo.name);
    //location[i]=location_base;

    cout<<location_base+fileinfo.name<<endl;
    location.push_back(location_base+fileinfo.name);
}

cout<<location.size()<<endl;
_findclose(handle);                                      //关闭句柄

return 0;

}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐