GETCWD(3C) 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 недоста- точно велико, или произошла ошибка при вызове функций нижнего уровня.