good chemistry is complicated, and a little bit messy -LW |
|
PerlMonks |
Re: $# -variable?by davorg (Chancellor) |
on Jul 27, 2006 at 09:05 UTC ( [id://563991]=note: print w/replies, xml ) | Need Help?? |
From perldata: The length of an array is a scalar value. You may find the length of array @days by evaluating $#days , as in csh. However, this isn't the length of the array; it's the subscript of the last element, which is a different value since there is ordinarily a 0th element. Assigning to $#days actually changes the length of the array. Shortening an array this way destroys intervening values. Lengthening an array that was previously shortened does not recover values that were in those elements. So $#array is the last index in @array. As arrays are indexed from zero, this will obviously one less that the result you'll get by evaluating @array in a scalar context. Perl has both ways to get information about the size of an array as both methods can be useful. In particular, $#array can be assigned to; which extends or truncates the array. Two more things to note:
-- <http://dave.org.uk> "The first rule of Perl club is you do not talk about
Perl club."
In Section
Seekers of Perl Wisdom
|
|