永发信息网

怎么用C统计电脑中文件的总数?

答案:1  悬赏:0  手机版
解决时间 2021-07-25 15:14
  • 提问者网友:记得曾经
  • 2021-07-25 03:58

可以的话给个程序看看!

最佳答案
  • 五星知识达人网友:胯下狙击手
  • 2021-07-25 04:45
#include <iostream>
#include <io.h>
using namespace std;
//节点
typedef struct FileName
{
char Name[500];//定义文件名上限为500
struct FileName *next;
}node;
//链表头指针
node *Head = NULL;
//释放函数
int Free()
{
int count = 0;
node *NowNode = Head;
while(NowNode->next)
{
Head = Head->next;
free(NowNode);
NowNode = Head;
count++;
}
free(Head);
Head = NULL;
count++;
return count;
}
int main()
{
struct _finddata_t c_file;
long hFile = 0;
node *NewNode = NULL;
node *np = NULL;//指向头节点的指针
int sum = 0;//目标路径下的文件数目

if((hFile = _findfirst("g:\\*.*",&c_file)) == -1l)
{
printf("There is no file in current directory!");
}
else
{
//处理第一个文件
NewNode = (node *)malloc(sizeof(node));
strcpy(NewNode->Name,(c_file.name));
NewNode->next = NULL;
Head = NewNode;

//处理其他文件
while((_findnext(hFile,&c_file)) == 0)
{
NewNode = (node *)malloc(sizeof(node));
strcpy(NewNode->Name,(c_file.name));
NewNode->next = Head;
Head = NewNode;
}
}
//输出所有文件名
np = Head;
while(np)
{
printf("%s\n",np->Name);
np=np->next;
sum++;
}
printf("该路径下共有%d个文件\n",sum);

sum = Free();

printf("%d个节点被释放",sum);
getchar();
return 0;

}
可以计算某一目录下的文件个数及文件名
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯