我想列出文件和他们的大小在“第一”文件夹,但我越来越奇怪的重复每两个文件。为什么文件大小会重复?
#include <stdlib.h>
#include <stdio.h>
#include <dirent.h>
#include <sys/stat.h>
struct dirent *dirPtr;
struct stat st;
void main()
{
DIR * dirp;
if((dirp=opendir("first"))==NULL)
{
printf("There has been an error");
}
while(dirPtr=readdir(dirp))
{
printf("%s - ", dirPtr->d_name);
stat(dirPtr->d_name, &st);
printf(" file size: %lu\n", st.st_size);
}
closedir(dirp);
}
这是我的输出:
有谁知道为什么发生这种情况?
'无效main' - ** ** Raaaaaaaarrrrrrrrgggggggghhhhhhhh – pmg