__func__扩展为标准化的文本?

时间:2016-01-04 18:26:09

标签: c macros c99

名为__func__的宏的存在是C99的一部分,它的意图是明确的,但它是在标准化的给定函数中扩展的确切文本吗?

1 个答案:

答案 0 :(得分:2)

是。宏被定义为扩展为函数的名称。

C11,§6.4.2.2

  

标识符_ func _应由。隐式声明   翻译好像紧跟着每个人的开口支撑   功能定义,声明

     

static const char _ func _ [] =“function-name”;

     

出现了,其中function-name是词法封闭的名称   功能

该标准将其描述为具有确切函数名称的字符串文字。所以我认为没有任何其他解释。