Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getcwd(3C) — Motorola System V 88k Release 4 Version 4.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

malloc(3C)

getcwd(3C)  —  C LIBRARY FUNCTIONS

NAME

getcwd − get pathname of current working directory

SYNOPSIS

#include <unistd.h>

char ∗getcwd (char ∗buf, int size);

DESCRIPTION

getcwd returns a pointer to the current directory pathname.  The value of size must be at least one greater than the length of the pathname to be returned. 

If buf is not NULL, the pathname will be stored in the space pointed to by buf. 

If buf is a NULL pointer, getcwd will obtain size bytes of space using malloc(3C).  In this case, the pointer returned by getcwd may be used as the argument in a subsequent call to free. 

getcwd will fail if one or more of the following are true:

EACCES A parent directory cannot be read to get its name. 

EINVAL size is equal to 0. 

ERANGE size is less than 0 or is greater than 0 and less than the length of the pathname plus 1. 

EXAMPLE

Here is a program that prints the current working directory. 

#include <unistd.h>
#include <stdio.h>
main()
{
char ∗cwd;
if ((cwd = getcwd(NULL, 64)) == NULL)
{
perror("pwd");
exit(2);
}
(void)printf("%s\n", cwd);
return(0);
}

SEE ALSO

malloc(3C)

DIAGNOSTICS

Returns NULL with errno set if size is not large enough, or if an error occurs in a lower-level function. 

  —  C Development Set

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026