realpath()

Получить путь к файлу

Прототип:

#include <stdlib.h>
char * realpath( const char *pathname,
char *resolved_name );

Аргументы:

pathname
Имя пути, которое вы хотите разрешить.
resolved_name
Указатель на буфер, в котором функция может хранить разрешенное имя.

Библиотека:

libc

Описание:

Функция realpath() разрешает все символические ссылки, симыолв слэша (/) и обращается к /./ и /../ в pathname, и копирует полученный абсолютный путь в область памяти, на которую ссылается resolved_name.

Чтобы определить размер буфера, на который указывает resolved_name, вызовите fpathconf() или pathconf() с аргументом _PC_PATH_MAX.

Эта функция разрешает как абсолютные, так и относительные пути и возвращает абсолютный путь, соответствующий требуемому пути. Все компоненты пути, кроме последнего, должны существовать на момент вызова realpath().

Возвращаемое значение:

Указатель на resolved_name, или NULL в случае возникновения ошибки (в этом случае в resolved_name будет содержаться проблемный pathname).

Коды ошибок:

Функция realpath() может завершиться некорректно и установить внешнюю переменную errno к любое из значений ошибок, указанных для функций библиотеки:

Классификация:

POSIX 1003.1 X/Open Systems Interfaces Extension

Безопасность использования
Точка остановки потока
Да
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

getcwd()




Предыдущий раздел: Описание API системной библиотеки