Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Re: simple array question

by philipbailey (Chaplain)
on Jan 03, 2011 at 03:22 UTC ( #880122=note: print w/replies, xml ) Need Help??

in reply to simple array question

It seems that you are trying to assign a list to array @compass. Lists are surrounded by brackets, or parentheses if you prefer that term: (). Instead, you have used braces, which in this case create a reference to an anonymous hash, hence the warning messages.

So you need something more like this:

#!/usr/bin/perl use strict; use warnings; my @compass = ( ["NW", "N", "NE"], ["W", "center", "E"], ["SW", "S", "SE"], ); print $compass[0]->[1];

Replies are listed 'Best First'.
Re^2: simple array question
by chromatic (Archbishop) on Jan 03, 2011 at 04:37 UTC
    Lists are surrounded by brackets....

    Not rvalue lists! Commas, not parentheses, produce literal rvalue lists. The three array references in this variant of that code are a list just as much as in the original version:

    my @compass = ["NW", "N", "NE"], ["W", "center", "E"], ["SW", "S", "SE"], ;

    The difference between the two examples is the precedence of the assignment operator compared to the precedence of the comma operators.

Re^2: simple array question
by tw (Acolyte) on Jan 03, 2011 at 03:40 UTC

    thanks greatly that worked!

    it is nice to have some help when starting, may have been a while before I finally got it.

    seems that some code has { or [ also

    is that a typo or a perl version thing or OS thing or am I still missing something? thanks again

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://880122]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (8)
As of 2017-09-19 13:57 GMT
Find Nodes?
    Voting Booth?
    During the recent solar eclipse, I:

    Results (221 votes). Check out past polls.