Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Perl Beginners > RE: question on...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 5 of 6 Topic 11011 of 11531
Post > Topic >>

RE: question on foreach loop

by andrew.curry@[EMAIL PROTECTED] (Andrew Curry) May 1, 2008 at 04:22 PM

>-----Original Message-----
>rom: J. Peng [mailto:peng.kyo@[EMAIL PROTECTED]
 01 May 2008 15:31
To: itshardtogetone@[EMAIL PROTECTED]
 beginners@[EMAIL PROTECTED]
 Re: question on foreach loop

To add a statement of "print $_" follow the foreach, you will see what
was happening.

foreach (@[EMAIL PROTECTED]
){
   print "$_\n";
   splice @[EMAIL PROTECTED]
   print "printing \@[EMAIL PROTECTED]
 =3D @[EMAIL PROTECTED]
";
}

On Thu, May 1, 2008 at 10:15 PM,  <itshardtogetone@[EMAIL PROTECTED]
> wrote:
> Hi Members,
>  Can someone explain why the foreach loop did not iterate 10 times.
>
>  Thanks
>
>  #################
>  use strict;
>  use warnings;
>
>  my @[EMAIL PROTECTED]
 =3D (1..10);
>
>  foreach (@[EMAIL PROTECTED]
){
>     splice @[EMAIL PROTECTED]
>     print "printing \@[EMAIL PROTECTED]
 =3D @[EMAIL PROTECTED]
";  }
>
>  ##### results ###########
>  printing @[EMAIL PROTECTED]
 =3D 2 3 4 5 6 7 8 9 10
>  printing @[EMAIL PROTECTED]
 =3D 3 4 5 6 7 8 9 10
>  printing @[EMAIL PROTECTED]
 =3D 4 5 6 7 8 9 10
>  printing @[EMAIL PROTECTED]
 =3D 5 6 7 8 9 10
>  printing @[EMAIL PROTECTED]
 =3D 6 7 8 9 10

Is not what is exactly expected

Removes the elements designated by OFFSET and LENGTH
             from an array, and replaces them with the elements
             of LIST, if any. =20
So above...

ON @[EMAIL PROTECTED]
 1,2,3,4,5,6,7,8,9,10#
Remove 0,1 (1) so....=20
printing @[EMAIL PROTECTED]
 =3D 2 3 4 5 6 7 8 9 10

ON @[EMAIL PROTECTED]
 2,3,4,5,6,7,8,9,10
Remove 2
printing @[EMAIL PROTECTED]
 =3D 3 4 5 6 7 8 9 10


ON @[EMAIL PROTECTED]
 3,4,5,6,7,8,9,10
Remove 3
printing @[EMAIL PROTECTED]
 =3D 4 5 6 7 8 9 10

ON @[EMAIL PROTECTED]
 4,5,6,7,8,9,10
Remove 4
printing @[EMAIL PROTECTED]
 =3D 5 6 7 8 9 10

ON @[EMAIL PROTECTED]
 5,6,7,8,9,10
Remove 5
printing @[EMAIL PROTECTED]
 =3D 6 7 8 9 10

As the iterator of foreach has been modified once by the foreach and
once by the splice it thinks it has nothing more to process?



--
J. Peng - QQMail Operation Team
eMail: peng.kyo@[EMAIL PROTECTED]
 AIM: JeffHua

--
To unsubscribe, e-mail: beginners-unsubscribe@[EMAIL PROTECTED]
 For additional
commands, e-mail: beginners-help@[EMAIL PROTECTED]
 http://learn.perl.org/



This e-mail is from the PA Group.  For more information, see =
www.thepagroup.com.
This e-mail may contain confidential information. =20
Only the addressee is permitted to read, copy, distribute or otherwise =
use this email or any attachments. =20
If you have received it in error, please contact the sender immediately. =
=20
Any opinion expressed in this e-mail is personal to the sender and may =
not reflect the opinion of the PA Group.
Any e-mail reply to this address may be subject to interception or =
monitoring for operational reasons or for lawful business practices.
 




 6 Posts in Topic:
question on foreach loop
itshardtogetone@[EMAIL PR  2008-05-01 22:15:36 
Re: question on foreach loop
chas.owens@[EMAIL PROTECT  2008-05-01 10:30:22 
Re: question on foreach loop
chas.owens@[EMAIL PROTECT  2008-05-01 10:27:29 
Re: question on foreach loop
peng.kyo@[EMAIL PROTECTED  2008-05-01 22:31:29 
RE: question on foreach loop
andrew.curry@[EMAIL PROTE  2008-05-01 16:22:35 
Re: question on foreach loop
rob.dixon@[EMAIL PROTECTE  2008-05-01 17:44:48 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Jul 25 18:56:39 CDT 2008.