我试图在 MetaPost 宏中连接一些字符串,其中一些来自数字参数。但是,我收到一条错误消息“将刷新额外的令牌”。
问题的本质在于以下代码段:
def foo(expr a) =
show a; % this prints 1
show str a; % this prints "" and crashes
enddef;
show str 1; % this prints "1"
foo(1);
使用 str 将数字更改为字符串适用于宏外部,但不适用于宏内部。为什么?