Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re^2: The weirdest problem with undef

by blazar (Canon)
on Jun 28, 2005 at 10:18 UTC ( #470559=note: print w/replies, xml ) Need Help??

in reply to Re: The weirdest problem with undef
in thread The weirdest problem with undef

In this case your best bet would be to declare my (@array1, @array2) before the for loop if you want them to be available to your subroutines.


This clearly tells me that the subroutine is looking for global variables. Declaring them as my inside a loop doesn't create global variables. So moving them to the top, like this, works fine:

OTOH this suggestion, in this form may contribute to suggest the OP to declare all of his own variables at the top of his scripts, which is indeed a bad habit many newbies have, and goes against proper scoping of variables.

I do use stuff like

{ my $var; sub bus { $var++; } }
myself, occasionally. But not as an alternative to parameter passing...

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://470559]
[Corion]: marto: No, a Sun Balcony, it was an ill-fated attempt to revive the Sparc series after the Pizzabox :)
[marto]: ah Sun, I sold my Pizzabox in around 2005
[Corion]: I used one at $work as a terminal, but those days are long gone by ;)
[marto]: I have an old IBM infowindow terminal to repurpose, I'll just wire a raspberry piz zero to the cable, providing access and wiFi :P
[marto]: the kids will love it
[Corion]: marto: Hehe ;) I've been toying with the idea of soldering an USB (-C) hub into a keyboard and making it a computer by slotting my phone into that :)

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (6)
As of 2018-03-21 11:22 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (267 votes). Check out past polls.