如何获取Perl子例程的参数内容

Jos*_*eph 3 perl function subroutine output

我想要一个带有参数的子并打印以其原始形式提供的参数以及参数的评估.

在这种情况下,参数的评估很容易,这是默认值!它以原始形式获得实际输入很困难.

use strict;
use warnings;

sub echo {
    my ($input) = @_;
    # print "5 + 10 =";
    print $input;
    print "\n";
}

echo 5 + 10;
Run Code Online (Sandbox Code Playgroud)

这将输出15.

我希望它输出 5 + 10 = "15"

ike*_*ami 8

sub echo {
    my ($expr, $result) = @_;
    print "$expr = $result\n";
}

echo '5 + 10', 5 + 10;
Run Code Online (Sandbox Code Playgroud)

要么

sub echo {
    my ($expr) = @_;
    my $result = eval($expr);
    die $@ if $@;
    print "$expr = $result\n";
}

echo '5 + 10';
Run Code Online (Sandbox Code Playgroud)