|
FTW(3C)НАЗВАНИЕ СИНТАКСИС #include <ftw.h> int ftw (path, fn, depth) char *path; int (*fn) ( ); int depth; ОПИСАНИЕ Если тип объекта есть FTW_DNR, подкаталоги этого каталога не просматриваются. Если тип есть FTW_NS, то
структура stat будет содержать мусор. Примером объекта,
который вызовет передачу fn типа FTW_NS, является файл
в каталоге, доступном на чтение, но недоступном для поиска.
Функция ftw обрабатывает каталог перед обработкой его
элементов.
Обход завершится тогда, когда или будет обойдено все
дерево, или функция fn возвратит ненулевое значение,
или возникнет ошибка при работе самой функции ftw (например, ошибка ввода/вывода). Если дерево обойдено полностью, ftw возвращает 0. Если fn возвратит ненулевое
значение, то ftw прекратит обход и выдаст это значение.
Если будет обнаружена ошибка при работе самой функции
ftw, то она возвратит -1 и соответствующим образом установит значение переменной errno.
Функция ftw использует по одному дескриптору файла на
каждый уровень дерева. Аргумент depth ограничивает количество используемых таким образом дескрипторов. Если
он не больше нуля, то используется один дескриптор.
Значение аргумента depth не должно быть больше, чем количество доступных для использования дескрипторов.
Функция ftw будет работать быстрее, если значение depth
не меньше глубины дерева.
СМ. ТАКЖЕ СЮРПРИЗЫ ОГРАНИЧЕНИЯ |
|