Linux x86_64Sistema de arquivos#79
getcwd
Retorna o caminho absoluto do diretório de trabalho atual do processo.
Descrição
Resolve o caminho percorrendo a árvore de diretórios a partir do diretório atual — pode falhar se algum diretório ancestral não for legível pelo chamador.
Header:
unistd.hman 2Assinatura
char * getcwd(char * buf, size_t size);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| buf | char * | Buffer de destino para o caminho. |
| size | size_t | Tamanho de `buf`. |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | bufchar * |
| rsi | argumento 2 | sizesize_t |
Valor de retorno
Ponteiro para `buf` em sucesso; NULL em erro, com errno definido.
Códigos de erro (errno)
- EACCES(13)
- Permissão negada.
- EFAULT(14)
- Endereço de memória inválido (ponteiro fora do espaço de endereçamento válido).
- EINVAL(22)
- Argumento inválido.
- ENOENT(2)
- Arquivo ou diretório inexistente.
- ERANGE(34)
- Resultado fora de faixa representável.