in reply to error when passing hash as reference causes
Which is, I think, close to what somebody else suggested. You can tidy up that sub and also avoid the error you made :)#!/usr/bin/perl -w use strict; my %hash = ( 's' => '1', 'e' => '200', 'b' => '1', 'me' => '0', 'mf' => '0', 'im' => '/usr/tmp/cache/ccarden/earth/images/earth', 'pad' => '4', 'yh' => '191', 'yl' => '0', 'of' => 'jpg', 'x' => '1024', 'y' => '768' ); sub print_h { my %new_hash = @_; foreach (keys %new_hash) { print " Key: $_,\t Value: $new_hash{$_}\n"; } } sub print_h_byref { my $href = shift; while (my ($key, $value) = each %$href) { print " Key: $key,\t Value: $value\n"; } } print_h (%hash); print "\n"; print_h_byref (\%hash);
|
|---|