#include <string.h> | |
#include <libgen.h> | |
char *dirname(char *s) | |
{ | |
size_t i; | |
if (!s || !*s) return "."; | |
i = strlen(s)-1; | |
for (; s[i]=='/'; i--) if (!i) return "/"; | |
for (; s[i]!='/'; i--) if (!i) return "."; | |
for (; s[i]=='/'; i--) if (!i) return "/"; | |
s[i+1] = 0; | |
return s; | |
} |