Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?

Re: subroutine reference parameters

by choroba (Chancellor)
on Jun 03, 2011 at 14:18 UTC ( #907985=note: print w/replies, xml ) Need Help??

in reply to subroutine reference parameters

each returns two things, key and value. You only assign to $key. You probably wanted to use keys instead? Or this:
sub printElement { my ($key,$val) = @_; print $key,' ',$val,"\n"; } my %hash = (0 => 'a', 1 => 'b', 2 => 'c'); while(my ($key,$value) = each(%hash)) { &printElement($key, $value); }

Replies are listed 'Best First'.
Re^2: subroutine reference parameters
by gnosti (Friar) on Jun 04, 2011 at 01:38 UTC

    You posted a link to the documentation for 'each'. Perhaps you should re-read it! When called in scalar context, the function returns a key. When called in list context, it returns a key-value pair.

      OK, but ($key) = is not scalar context.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://907985]
[Discipulus]: where is vote fairy? I'm expecting a refreshing fall of XP..

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (9)
As of 2017-06-24 14:20 GMT
Find Nodes?
    Voting Booth?
    How many monitors do you use while coding?

    Results (558 votes). Check out past polls.