#define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__) 的更好方案
#define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
#ifndef __FILENAME__ #ifdef __cplusplus extern "C" char *strrchr(const char *str, int c); #else//__cplusplus char *strrchr(const char *str, int c); #endif//__cplusplus #define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__) #endif//__FILENAME__