gpt4 book ai didi

perl - 是否可以将 sprintf 类型参数传递给 Perl 函数?

转载 作者:行者123 更新时间:2023-11-30 23:47:11 24 4
gpt4 key购买 nike

考虑以下示例代码。

my $a = "test";
my $b = "stackoverflow";

test("%s - %s\n", $a, $b);

sub test {
my $error = sprintf(@_);
print $error;
}

这会打印 3 而不是格式化的字符串。是否有可能做我正在尝试的事情?

最佳答案

正如 VGE 所建议的,是原型(prototype)导致了问题,但您需要使用 shift,而不是 pop:

sub test {
my $error = sprintf(shift, @_);
print $error;
}

sprintf 在标量上下文中计算它的第一个参数。如果那是一个数组,你会得到数组的长度。

关于perl - 是否可以将 sprintf 类型参数传递给 Perl 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4552788/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com