GETCWD(3C)

НАЗВАНИЕ
getcwd - получение маршрутного имени текущего каталога

СИНТАКСИС


	char *getcwd (buf, size)

	char *buf;

	int size;

ОПИСАНИЕ
Функция getcwd возвращает указатель на маршрутное имя текущего каталога. Значение size должно по крайней мере на два превосходить длину маршрутного имени.

Если аргумент buf равен NULL, то getcwd получает size байт памяти с помощью функции malloc(3S). В этом случае указатель, возвращаемый getcwd, может впоследствии использоваться как аргумент функции free.

В реализации getcwd используется функция popen(3S) для направления вывода команды pwd(1) в нужную область памяти.

ПРИМЕР


     void exit (), perror ();

        ...

     if ((cwd = getcwd ((char*) NULL, 64)) == NULL) {

       perror ("pwd");

       exit(2);

     }

     printf ("%s\n", cwd);

СМ. ТАКЖЕ
malloc(3C), popen(3C).
pwd(1) в Справочнике пользователя.

ДИАГНОСТИКА
При неудачном завершении функция getcwd возвращает пустой указатель (NULL), а переменной errno присваивается код ошибки. Это происходит, если значение size недостаточно велико, или произошла ошибка при вызове функций нижнего уровня.