BASENAME(3)

NAME
basename - return the last component of a pathname

LIBRARY
libc

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 path consists entirely of ‘/’ characters, 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.

SEE ALSO
basename(1), dirname(3)

STANDARDS
•   xpg4.2
•   p1003.1-2001

BUGS
If the length of the result is longer than PATH_MAX bytes (including the terminating nul), the result will be truncated.

The basename() function returns a pointer to static storage that may be overwritten by subsequent calls to basename(). This is not strictly a bug; it is explicitly allowed by p1003.1-2001.