http://www.perlmonks.org?node_id=281728


in reply to Re: opening a file destroys nulling entries in a list?!?!
in thread opening a file destroys nulling entries in a list?!?!

How come while(<IN>){}, but not for (@x) {}? why is while (<IN>) so special?

I love perl, but this scares the hell out of me.

--Bob Niederman, http://bob-n.com

Replies are listed 'Best First'.
Re: Re: Re: opening a file destroys nulling entries in a list?!?!
by bobn (Chaplain) on Aug 07, 2003 at 03:45 UTC

    Nevermend. I think I get it - someone else posted that while(<>){} is the same as while($_=<>){} - it does an assignment to $_ and that's what does the damage.

    Somehwere, I think I remember someone (Tom Christiansen, I think) saying to always localize $_ in subroutines. Now I know why.

    --Bob Niederman, http://bob-n.com