I dont understand second output. When print command is used with array name in quotes, output has a space between elements. where does this space come from ?

The Perl print built-in prints a list with the $, special variable interpolated between each item.

Double-quoted strings (which have nothing directly to do with print) interpolate arrays with the $" special variable interpolated between each array element. See the documentation in perlvar for the default values of the  $, and  $" special variables.

In the third output, everything in single quotes is printed as literal. Does it mean that anything in single quotes is treated as literal and will be printed as is.

Yes. Whether printed or not, there is no interpolation in single-quoted strings. The  \ (backslash) character has limited effect as an escape under conditions explained in the docs on single-quoted strings linked by other respondents.

Anything in double quotes will be treated as string value with variables getting its values from the code ?

Yes and no. Double-quoted strings interpolate scalar and array variables as per the docs.

>perl -wMstrict -le "my @array = ('one', qw(two three), qq{four}); print @array; $, = 'FOO'; print @array; print qq{@array}; $\" = 'BAR'; print qq{@array}; " onetwothreefour oneFOOtwoFOOthreeFOOfour one two three four oneBARtwoBARthreeBARfour

In reply to Re^3: looping through array by AnomalousMonk
in thread looping through array by manishrathi

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.