getcwd(3C) UNIX System V(C Development Set) getcwd(3C)
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).
10/89 Page 1
getcwd(3C) UNIX System V(C Development Set) getcwd(3C)
DIAGNOSTICS
Returns NULL with errno set if size is not large enough, or if an error
occurs in a lower-level function.
Page 2 10/89