telldir(3)

НАИМЕНОВАНИЕ
telldir - возвращает текущее положение в потоке каталога

БИБЛИОТЕКА
Standard C library (libc, -lc)

ОБЗОР
#include <dirent.h>

long telldir(DIR *dirp);

    Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

telldir():
    _XOPEN_SOURCE
       || /* glibc >= 2.19: */ _DEFAULT_SOURCE
       || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

ОПИСАНИЕ
Функция telldir() возвращает текущее положение, связанное с потоком каталога dirp.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
On success, the telldir() function returns the current location in the directory stream. On error, -1 is returned, and errno is set to indicate the error.

ОШИБКИ

EBADF
    Неверный дескриптор потока каталога dirp.

АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение
telldir() | Безвредность в нитях | MT-Safe

СТАНДАРТЫ
POSIX.1-2008.

ИСТОРИЯ
POSIX.1-2001, 4.3BSD.

Up to glibc 2.1.1, the return type of telldir() was off_t. POSIX.1-2001 specifies long, and this is the type used since glibc 2.1.2.

В старых файловых системах возвращаемое telldir() значение было просто файловым смещением в каталоге. В современных файловых системах для представления каталогов используются структуры деревьев или хэшей, а не плоские таблицы. В таких файловых системах значение, возвращаемое telldir() (и используемое внутри readdir(3)) — некая «подсказка», которая используется реализацией для получения позиции в каталоге. Прикладные программы должны считать это значение «чёрным ящиком» и не делать предположений о его содержимом.

СМОТРИТЕ ТАКЖЕ
closedir(3), opendir(3), readdir(3), rewinddir(3), scandir(3), seekdir(3)

ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков (<debian-l10n-russian@lists.debian.org>).