#!/usr/bin/perl use strict; use warnings; use Data::Dumper; sub test1 (\[%]) { print Dumper(@_); } sub test2 (\[@]) { print Dumper(@_); } sub test3 (\[$]) { print Dumper(@_); } my %hash=(test1=>1,test2=>1); test1(%hash); my @array=qw(test1 test2); test2(@array); my $scalar='test3'; test3($scalar);