my $number_in_array_sss = @sss; print scalar(@sss). " ". $num\n"; #### #!/usr/bin/perl -w use strict; use Data::Dumper; my @sss = ("1","3","4"); my $reee = []; foreach my $entry (@sss) { push (@$reee, $entry); } # this is to show various uses of scalar() and that # the dot (concatenation) operator forces scalar context print "\$ree has ",scalar(@$reee)," elements\n"; print "\$ree has ".@$reee." elements\n"; print ''.@$reee." elements\n"; print "each element is: @$reee \n"; print Dumper \$reee; #PRINTS: #$ree has 3 elements #$ree has 3 elements #3 elements #each element is: 1 3 4 #$VAR1 = \[ # '1', # '3', # '4' # ]; # To accomplish the above is only one Perl statement!! # No "foreach" or "for" loop is needed, 3 lines of code # becomes one line of code. I do not count blank lines # or lines with just braces "{}" as "lines of code". my @aaa = (1,5,7); # like @sss, repeated for clarity # and using different numbers. my $bbb = [@aaa]; # this means: # allocate some memory and assign its # reference to $bbb. # The array, @aaa is copied to that # memory referenced by $bbb. print Dumper \$bbb; #prints #$VAR1 = \[ # 1, # 5, # 7 # ];