__FILE__ macro shows full path

mahmood picture mahmood · Dec 13, 2011 · Viewed 143.2k times · Source

The standard predefined macro __FILE__ available in C shows the full path to the file. Is there any way to short the path? I mean instead of

/full/path/to/file.c

I see

to/file.c

or

file.c

Answer

red1ynx picture red1ynx · Dec 13, 2011

Try

#include <string.h>

#define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)

For Windows use '\\' instead of '/'.