Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: simple array question

by philipbailey (Curate)
on Jan 03, 2011 at 03:22 UTC ( [id://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?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://880122]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (3)
As of 2024-04-25 09:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found