my %foo; for ( $foo{zaehler} = 0; $foo{zaehler} <= 10; $foo{zaehler}++ ) { test (\%foo); } sub test { my ($bar) = @_; print "habe " . $bar -> {zaehler} . "\n"; }