那如果我要把文件的每一行都push进去,且每一行有好几个值,每个值用空格分开的,我该怎么做才能不只是push最后一行呢? 也就是说怎么读一行,改变一个pt的指针地址? 谢谢
2009-01-11 junli.linux 发件人: Changying Li 发送时间: 2009-01-10 16:43:00 收件人: perlchina 抄送: 主题: [PerlChina] Re: 关于push的一个问题 "junli.linux" <[email protected]> writes: > 我的脚本: > open(FILE,$filename) > while($line=<FILE>) > { > @str=split(/ /,$line); > $pt->{pga}=$str[0]; > $pt->{mmi}=$str[1]; > push @grid,$pt; 这里push的是$pt,一个指针,下一个循环还是push的同一个指针,所以多次 push的 数据是一样的 , 都是同一个指针,指向同一个位置,这个位置就是你不断的在赋 值的地方,到最后,只保留了一个值---文件的最后一行. > } > close(FILE) > foreach $pt(@grid) > {print "$pt->{pga} $pt->{mmi}\n";} > > > 问题是结果只print出来 FILE里面的最后一行数据。不知道哪里出了问题。。大家帮忙看看。 > > > -- Thanks & Regards Changying Li --~--~---------~--~----~------------~-------~--~----~ 您收到此信息是由于您订阅了 Google 论坛“PerlChina 论坛”论坛。 要在此论坛发帖,请发电子邮件到 [email protected] 要退订此论坛,请发邮件至 [email protected] 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛 -~----------~----~----~----~------~----~------~--~---
