Provided by:
manpages-es_1.55-10_all 
NOMBRE
getcwd, get_current_dir_name, getwd - Obtienen el directorio de trabajo
en curso
SINOPSIS
#include <unistd.h>
char *getcwd(char *buf, size_t tam);
char *get_current_dir_name(void);
char *getwd(char *buf);
DESCRIPCI'ON
La funcion getcwd() copia el nombre de camino absoluto del directorio
de trabajo en curso al vector apuntado por buf, que tiene de longitud
tam.
Si el nombre de camino absoluto antedicho requiriera un bufer mayor de
tam elementos, se devolveria NULL y errno tomaria el valor ERANGE; una
aplicacion deberia comprobar si ha ocurrido este error, y reservar un
bufer mas grande si fuera necesario.
Como una extension al estandar POSIX.1, getcwd() reserva el bufer
dinamicamente empleando para ello malloc() si buf es NULL a la hora de
la llamada. En este caso, el bufer reservado tiene la longitud tam a
menos que tam sea cero, situacion en la que buf se reservara con un
tamano tan grande como sea necesario. Es posible (e, incluso,
recomendable) liberar con free() los buferes si han sido obtenidos por
esta via.
get_current_dir_name, cuyo prototipo solo existe si esta definida la
macro __USE_GNU, obtendra memoria con malloc(3) para un vector lo
bastante grande como para alojar el nombre del directorio en curso. Si
la variable de ambiente PWD existe y tiene un valor correcto, se
devuelve este valor.
getwd, cuyo prototipo solo existe si esta definida la macro __USE_BSD,
no obtendra memoria con malloc(3) ni de ninguna otra forma. El
argumento buf debera ser un puntero a un vector de al menos PATH_MAX
bytes de largo. getwd solamente devuelve los primeros PATH_MAX bytes
del nombre de camino real.
VALOR DEVUELTO
NULL en caso de fallo (por ejemplo, si el directorio en curso no es
legible), con un valor apropiado en errno, y buf en caso de acabar con
exito.
CONFORME A
POSIX.1
V'EASE TAMBI'EN
chdir(2), free(3), malloc(3).