Wie übergebe ich ein Array und einen String als Argumente an eine Funktion?

Weil ich keinen bequemen Weg finde, um zu überprüfen, ob$str ist in@arrayIch versuche selbst einen zu machen, aber es funktioniert nicht.

Ich denke, das liegt an der Verwechslung von Array und String. Es gibt weiter0 zu$str. Bitte lassen Sie mich wissen, wie das Problem behoben werden kann.

use 5.010;
use strict;
use warnings;

sub ifin {
    my (@array, $str) = @_;
    for my $i (@array) {
        if ($i eq $str) {
            return 1;
        }
    }
    return 0;
}

my @f = (1, 2, 3, 4);
my $k = 1;
print ifin(@f, $k);

Antworten auf die Frage(5)

Ihre Antwort auf die Frage