sub-rotina getcwd

Propósito

Obtém o nome do caminho do diretório atual.

Biblioteca

Biblioteca C Padrão (libc.a)

Sintaxe

#include <unistd.h>
char *getcwd ( Buffer,  Size)
char *Buffer;
size_t Size;

Descrição

A subroutine getcwd coloca o nome de caminho absoluto do diretório de trabalho atual na matriz apontada pelo parâmetro Buffer , e retorna esse nome de caminho. O parâmetro size especifica o tamanho em bytes da matriz de caracteres apontada pelo parâmetro Buffer .

Nota: por padrão, a sub-rotina getcwd usa um algoritmo de armazenamento em cache para recuperar o nome do caminho do diretório atualmente em funcionamento. Para desativar a operação de armazenamento em cache, configure o parâmetro do ambiente AIX_CWD_CACHE como OFF..

Parâmetros

Item Descrição
de Saída Aponta para o espaço string que conterá o nome do caminho. Se o valor do parâmetro Buffer for um ponteiro nulo, a subroutine getcwd , usando a subroutine malloc , obtém o número de bytes de espaço livre conforme especificado pelo parâmetro Size . Neste caso, o ponteiro retornado pela subroutine getcwd pode ser usado como o parâmetro em uma chamada subsequente para a subroutine free . Iniciando a subroutina getcwd com um ponteiro nulo como o valor do parâmetro Buffer não é recomendado.
Item Descrição
Tamanho Especifica o comprimento do espaço string. O valor do parâmetro Tamanho deve ser, no mínimo, 1 maior que o comprimento do nome do caminho a ser devolvido.

Valores De Retorno

Se a subroutine getcwd não for bem-sucedida, um valor nulo é retornado e a variável global errno será definida para indicar o erro. A subroutine getcwd não é bem sucedida se o parâmetro Size não for grande o suficiente ou se ocorrer um erro em uma função de nível inferior.

Códigos De Erro

Se a subroutine getcwd não for bem-sucedida, ele retornará um ou mais dos seguintes códigos de erro:

Item Descrição
EACCES Indica que a permissão de leitura ou busca foi negada para um componente do nome do caminho
EINVAL Indica que o parâmetro Tamanho é 0 ou um número negativo.
ENOMEM Indica que o espaço de armazenamento insuficiente está disponível.
ERANGE Indica que o parâmetro Tamanho é maior que 0, mas é menor do que o comprimento do nome do caminho mais 1.