http://qs1969.pair.com?node_id=11124918

Leudwinus has asked for the wisdom of the Perl Monks concerning the following question:

Fellow Monks,

How do you get the length of an array that is passed by reference to a subroutine?

In the program below, I pass the array @test_array which contains [1, 2, 3], [4, 5, 6] by reference to a subroutine test_function.

The expected result is 2 but I keep getting the error Can't use string ("1") as an ARRAY ref while "strict refs" in use at line 12.

use warnings; use strict; use feature qw/ say /; use Data::Dumper; $Data::Dumper::Indent = 0; sub test_function { my $ref_array = @_; say Dumper (@_); # $VAR1 = [[1,2,3],[4,5,6]]; say scalar @{ $ref_array }; # line 12 } my @test_array = ([1, 2, 3], [4, 5, 6]); &test_function(\@test_array);

Gratias tibi ago
Leudwinus