Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getcwd(3c) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

malloc(3C)

getcwd(3C)



getcwd(3C)              LIBRARY FUNCTIONS              getcwd(3C)



NAME
     getcwd - get path-name of current working directory

SYNOPSIS
     #include <unistd.h>

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

DESCRIPTION
     getcwd returns a pointer to the current directory path name.
     The  value  of  size  must  be at least one greater than the
     length of the path-name 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 less than or equal to 0.

     ERANGE      size is greater than 0 and less than the  length
                 of the path name 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)




                                                                1





getcwd(3C)              LIBRARY FUNCTIONS              getcwd(3C)



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




















































                                                                2



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