BASENAME(3C) Standard C Library Functions BASENAME(3C)

NAME


basename - return the last element of a path name

SYNOPSIS


#include <libgen.h>

char *basename(char *path);


DESCRIPTION


The basename() function takes the pathname pointed to by path and returns
a pointer to the final component of the pathname, deleting any trailing
'/' characters.


If the string consists entirely of the '/' character, basename() returns
a pointer to the string "/" .


If path is a null pointer or points to an empty string, basename()
returns a pointer to the string "." .

RETURN VALUES


The basename() function returns a pointer to the final component of path.

USAGE


The basename() function may modify the string pointed to by path, and may
return a pointer to static storage that may then be overwritten by a
subsequent call to basename().


When compiling multithreaded applications, the _REENTRANT flag must be
defined on the compile line. This flag should only be used in
multithreaded applications.

EXAMPLES


Example 1: Examples for Input String and Output String




+-------------+---------------+
|Input String | Output String |
+-------------+---------------+
|"/usr/lib" | "lib" |
+-------------+---------------+
|"/usr/" | "usr" |
+-------------+---------------+
|"/" | "/" |
+-------------+---------------+

ATTRIBUTES


See attributes(7) for descriptions of the following attributes:


+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+

SEE ALSO


basename(1), dirname(3C), attributes(7), standards(7)

July 24, 2002 BASENAME(3C)