Perl中Sprintf和printf之间的区别

时间:2013-12-18 06:42:49

标签: perl printf

Perl中sprintfprintf之间有什么区别?

我真的对这些功能感到困惑。

我知道printf。它用于STDOUT,但我想深入了解这些函数。

1 个答案:

答案 0 :(得分:9)

sprintf只返回一个格式化字符串,printf将其打印到文件句柄。

printf HANDLE "%s", $arg

可以(非常冗余地)写成

$formatted = sprintf "%s", $arg
print HANDLE $formatted

当然,这个具体的例子最自然地写成

print HANDLE $arg

因为我用于示例的格式字符串非常简单而无用。

当然,HANDLE是可选的,默认为STDOUT,但您也可以使用select更改默认值。