使用 __FUNCTION__ 进行字符串化不起作用

gau*_*waj 3 c macros

LINE类似的问题

但是当我替换__LINE____FUNCTION__. 宏连接字符串文字“ __FUNCTION__”而不是实际的函数名称。

Hol*_*Cat 6

__FUNCTION__不是宏,它是隐式声明的静态数组。__func____PRETTY_FUNCTION__等也是如此。

因此#无法对其进行操作。如果您想将某些内容连接到它,则必须在运行时或使用constexpr.

  • @gauravbharadwaj 不,不能这样做。预处理器是一个简单的东西,它不知道函数是什么。 (4认同)