Есть код... отрыл в инете. Все вроде понятно, но не хватает знаний понят его полностью.
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <dirent.h>
#define DIRNAME "."
#define OFNAME "out.log"
int main(void)
{
FILE *ofp;
DIR *dp;
struct dirent *dent;
if( (dp = opendir(DIRNAME)) == NULL) {
fprintf(stderr, "opendir: %s: %s\n", DIRNAME, strerror(errno));
return 1;
}
if( (ofp = fopen(OFNAME, "w")) == NULL) {
fprintf(stderr, "fopen: %s: %s\n", OFNAME, strerror(errno));
return 1;
}
while(dent = readdir(dp))
if(strcmp(".", dent->d_name) && strcmp("..", dent->d_name))
fprintf(ofp, "%s\n", dent->d_name);
closedir(dp);
fclose(ofp);
return 0;
}Не понятно как тут работает цикл while. Вижу что сравнивает "." с dent->d_name, но чет не вьеду в это. И что это за d_name. Подскажите. Я ламер и прошу не пинать ))
UPD: Мне нужно сделать программу, которая будет выдавать список всех файлов, которые были изменены за нужное мне число. Ну и где находятся они соответственно в громадном дереве директорий. Типо того.
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"
