For Array length, we use either $#<array-name> or scalar(<array>) or something with print to force a scalar context.
How can we create runtime arrays using range operator and get immediate length of the same.
Tried a few things and searched too, but can't find the solution.
This works-This also works-perl -e 'my @a="aa".."zz"; print "Length=".@a;'
This also works-perl -e 'my @a="aa".."zz"; print scalar(@a);'
perl -e 'my @a="aa".."zz"; print @#a;'
Just if I need to do it in a single statement..
Syntax error thrown-
perl -e 'print length($("aa".."zz"));'
Syntax error thrown
perl -e 'print length(@("aa".."zz"));'
Even if I force scalar context,syntax error thrown.
perl -e 'my $len=@("aa".."zz");print $len;'
Might be I am forgetting something basic or so. Need your help please.
PS: Please don't advice on strict and warnings etc. This is just something quick and dirty.
In reply to Array length with range operator by gurpreetsingh13
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |