在今天的Perl课程中,一名学生上交了令我烦恼的作业.我们正在研究ARGV,但结果不是我的预期.他的节目(meme.pl)是:
#!/usr/bin/perl
$A = $ARGV[0];
chomp($A);
if ($A == "godzilla"){
print "$A\n";
}
else {
print "We need a monster's name\n";
}
Run Code Online (Sandbox Code Playgroud)
如果我输入:
% ./meme.pl bob
Run Code Online (Sandbox Code Playgroud)
结果是
% bob
Run Code Online (Sandbox Code Playgroud)
因此变量赋值有效,但无论在命令行输入什么,条件($ A =="godzilla")都是真的.我预计,因为$ ARGV [0]是"bob"而$ A = $ ARGV [0],那么它不应该是$ A ="godzilla".
我错过了什么?我已经梳理了几个小时的代码了,我知道我只是忽略了一些小东西.