-1
サイズのあるフォルダからすべてのファイルを取得しようとしています。問題は、私は現在のディレクトリからのパスを変更する、それはファイルのサイズを見つけることができないということです。現在のディレクトリ、プロジェクトが置かれているディレクトリに対してのみ動作します。もし私wirte d = opendir( "。")が動作しているが、そのようにしか私はパスを変更したい。おかげで コード:リストファイルのパスを変更するときの問題
#include <stdio.h>
#include <dirent.h>
#include <sys/stat.h>
void main()
{
DIR *d;
struct dirent *de;
struct stat buf;
int exists;
int total_size;
d = opendir("C:\\MinGWStudio\\Templates");
if (d == NULL) {
perror("prsize");
exit(1);
}
total_size = 0;
for (de = readdir(d); de != NULL; de = readdir(d)) {
exists = stat(de->d_name, &buf);
if (exists < 0) {
fprintf(stderr, "Couldn't stat %s\n", de->d_name);
}
else {
printf("%s ", de->d_name);
printf("%d \n", buf.st_size);
total_size += buf.st_size;
}
}
closedir(d);
printf("%d\n", total_size);
}
私は窓で作業しています – Sebi95
C++のグローバル名前空間では 'void main()'を使わないでください。 'int main(void)'を使ってください。 – MikeCAT