在一些gcc代码中,我遇到了以下构造。 致命的(_(“%s:找不到部分%s”),file_name,section_name); 在这种情况下,我从未见过“_”。 它是从字符数组创建实体的某种构造,很可能是编译器扩展。
有人可以告诉我它是什么吗?
答案 0 :(得分:2)
它通常是与GNU gettext project相关联的宏,用于国际化。想法是传递的字符串是查找表中的键。每种支持的语言都有一个这样的表,当前的表由少数环境因素决定。
表中的值应该是键的翻译,转换为目标语言。
由于查找这样的翻译字符串是i18n代码中的常见活动,因此_
被引入作为查找函数的便捷短名称。