我正在尝试使用__BASE_FILE__预处理器宏来获取文件名,但是它正在扩展到完整路径,类似于__FILE__宏。为什么会这样呢?
我用的是gcc 7.3.1版。
发布于 2020-10-09 23:08:20
为什么会这样?
__BASE_FILE__将扩展到提供给编译器的路径。因此,如果将完整路径传递给编译器,则__BASE_FILE__将扩展为完整路径。如果将相对名称传递给编译器,则__BASE_FILE__将扩展为相对名称。
例如,如果使用g++ ../path/to/file.cpp编译,则__BASE_FILE__将扩展为"../path/to/file.cpp"。
https://stackoverflow.com/questions/64282558
复制相似问题