C 和 C 语言中的函数名称宏
在 C 和 C 语言中,有多个宏可用于访问当前函数的名称。这些宏包括 __func__、__FUNCTION__ 和 __PRETTY_FUNCTION__。
func
在 C99 中定义并被 C 11 采用,func 是一个隐式声明的字符数组变量保存封闭函数的名称。这是一个简单而轻量级的选项,提供了朴素的函数名称。
FUNCTION
FUNCTION 是一个预标准某些编译器支持的扩展。它的行为类似于 func__,但它不是官方语言标准的一部分。出于可移植性的原因,最好使用 __func。
PRETTY_FUNCTION
PRETTY_FUNCTION 是一个 GCC-提供函数“漂亮”名称的特定扩展,包括它的签名。与它的前身不同,它在 C 中主要用于获取具有参数类型的完整函数原型。
文档
func 记录在 C99 中标准,第 6.4.2.2/1 节。 FUNCTION 没有正式记录,但通常包含在特定于编译器的文档中。 PRETTY_FUNCTION 记录在 GCC 文档页面“函数名称作为字符串”。
何时使用每个宏
宏的选择取决于具体要求:
以上是如何在'__func__”、'__FUNCTION__”和'__PRETTY_FUNCTION__”之间进行选择以访问 C 和 C 语言中的函数名称?的详细内容。更多信息请关注PHP中文网其他相关文章!