Address of a specific element: an Array containing Array References ...

Friends:

I have a syntax question, and I have put together this contrived example (with running comments), to demonstrate the line of code I need adjusted. Sorry for the verbosity.

############################################################ # @tableCellData = will be used to store 2 anonymous array # references. # @table = will be used to store addresses of array # *elements* (not of arrays). ############################################################ my (@table, @tableCellData); ##################################################### # Insert 2 anonymous array references into @table. # This essentially creates a 2D table, with # 2 rows / 0 columns. ##################################################### push @tableCellData, "foo"; push @tableCellData, "foo"; ############################################################ # Dynamically expand each anonymous array so that each has # two elements. ############################################################ $tableCellData[0][0] = "0,0"; $tableCellData[0]1 = "0,1"; $tableCellData1[0] = "1,0"; $tableCellData11 = "1,1"; ############################################################ # At this point, at run-time the following (test) line will # print "1,0" (literally). ############################################################ print "$tableCellData1[0]\n"; ########################################################## # Next, we pouplate the @table array with the both elements # of the first anonymous array (created above), and also # with the both elements of the second anonymous array # (also created above). ########################################################## push @table, ("$tableCellData[0][0]\n"); push @table, ("$tableCellData[0]1\n"); push @table, ("$tableCellData1[0]\n"); push @table, ("$tableCellData11\n"); ########################################################## # Thus, at this point, at run-time the following (test) # line will print: # "0,0" "0,1" "1,0" "1,1" each on their own line. ########################################################## print "@table\n";
Everything in this contrived example works fine up to this point! In fact, again my question (up next) is not about debugging but, rather, about syntax. Here's the question:

As we can see from the above "print" statement, the four "push" statements before it, inserted the *CONTENT* of the anonymous array element indexed (i.e. referenced/positioned) at xy.

But what I need to do instead, is to insert the *ADDRESS* of that array *ELEMENT* instead. The reason (if curious) is that each time I execute statement:
print "@table\n";
it's output should dynamically change as I update individual elements of the two anonymous arrays contained in the named array @tableCellData. For example:
$tableCellData1[0] = "hereIsAnUpdate";
should be reflected on the next "print" statement.

Thus, it's only a slight modification that I seek to the 2nd argument of the following statement (an extra $, @, \, etc., -- but I can't quite get it right):

push @table, ("$tableCellDataxy"); ^^^^^^^^^^^^^^^^^^^^
That is the line where I need the tip.

Note: There are multiple ways to do things in PERL, however I'm seeking this particular way, so sustained focus (to the slight modification I seek) would be much appreciated.

Thanks In Advance & Regards,

Noel Milton Vega

In reply to Address of a specific element: an Array containing Array References ... by nmvega

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.