getcwd(3C)
getcwd --
get pathname of current working directory
Synopsis
#include <unistd.h>
char getcwd(char buf, size_t 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.
Return values
getcwd returns
NULL
with
errno
set if
size
is not large enough, or if an error occurs
in a lower-level function.
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.
References
malloc(3C),
types(5)
Examples
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);
}
Standards conformance
This routine conforms to X/Open System Interfaces and Headers,
Issue 4, Version 2.
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004