为函数名称获取选择正确的标识符
C 和 C 提供了几个用于在运行时检索活动函数名称的标识符: __PRETTY_FUNCTION__ 、 __FUNCTION__ 和 __func__。本指南探讨了这些标识符之间的差异,并提供了它们的使用指导。
__func__:
"__func__" 是 C99 引入的标识符,表示包含以下内容的字符数组:函数的名称。它在每个函数中隐式定义。在 C 中,func 是在 C 11 中引入的,提供了实现定义的字符串。
__FUNCTION__:
"__FUNCTION__" 是一个预定义的gcc 和 Visual C 等编译器支持的标准扩展。但是,建议在受支持的情况下使用 func,仅在 func 不可用时使用 FUNCTION。
__PRETTY_FUNCTION__:
“__PRETTY_FUNCTION__”是一个gcc 特定的扩展,类似于 __FUNCTION__。对于 C 函数,它显示“漂亮”的名称,包括签名。 Visual C 有一个类似的扩展 __FUNCSIG__。
决定使用哪个标识符:
选择取决于编译器支持和所需的函数名称格式:
文档:
以上是我应该使用哪个 C/C 标识符在运行时获取函数名称?的详细内容。更多信息请关注PHP中文网其他相关文章!