gperf 信息页面声称,如果您指定,-l
则
输入文件中的关键字可能包含 NUL 字节,以字符串语法写成 \000 或 \x00,而 gperf 生成的代码会将 NUL 视为任何其他字节
但是,当我通过以下方式运行此输入文件时gperf -L C++ -l
:
foo
\000bar\000
\x00baz\x00
bat
我得到:
<snip>
static const char * wordlist[] =
{
"", "", "",
"foo",
"", "", "", "",
"bat",
"", "",
"\\x00baz\\x00",
"", "", "", "",
"\\000bar\\000"
};
<snip>
看起来它将\000
and\x00
视为文字值而不是空字节。
如何在我的 gperf 字符串中正确使用指定空字节?