文件句柄的问题

[root@test1 youcz]# cat eof.pl
#!/usr/bin/perl
#auth youcz 201105026 May twentith-sixth Thursday
open(DB,"emp.names") || die "Can't open emp.names: $!";
while(<DB>){        ---------------》》 请问是不是一次循环只读取一行,如果是的话
        print if (/Norma/ .. eof);         ------------》》 怎么实现的打印到文件尾?
}

作者: youcz   发布时间: 2011-05-26

while (<>) 是每次只读一行,因为 while 为括号里面提供 scalar context

看下 .. 操作符在 scalar context 下的作用。其实不一定要用 eof 只要恒为假就可以了比如 undef,因为 while 会比它先测试 eof。

作者: zhlong8   发布时间: 2011-05-26

这不是在小骆驼书里说得明明白白了吗?为啥老问这些个问题?搜索一下也有啊。

作者: 2gua   发布时间: 2011-05-26



QUOTE:
这不是在小骆驼书里说得明明白白了吗?为啥老问这些个问题?搜索一下也有啊。
2gua 发表于 2011-05-26 14:59




    瓜哥,你要体谅新人。不同水平的人对同一本书的感受度不一样。好多内容,如果水平还不到那里的话,看完以后也感受不到,留不下一点印像。
小骆驼书我看了两遍了,楼主的问题我也不会,也不记得小骆驼书里讲过这个内容。

作者: kingwmj   发布时间: 2011-05-26

回复 2gua


    作为版主,不要blame用户

    要想想 板块 是不是 各种层次的问题分类回答
    是否有基础到连CPAN都不知道怎么用的问题的对应回答
   
    相信很多人都会Google 自学,可能搜Perl的时候第一个出来的就是chinaunix,他们过来问这么基础的问题也很正常
    这恰好说明了有更多的人开始学习这门语言

    另外,这个板块的目标也不清楚,并没有规定不准问什么类型的问题,也没有新手园地之类的,出现各种问题也不奇怪了。

    想想自己也是一步一个跟头学过来的呀。

作者: ttcn_cu   发布时间: 2011-05-26

你们玩。

作者: 2gua   发布时间: 2011-05-26



QUOTE:
你们玩。
2gua 发表于 2011-05-26 16:21




    瓜哥,别走啊。

作者: kingwmj   发布时间: 2011-05-26

回复 kingwmj


    没走啊。

作者: 2gua   发布时间: 2011-05-26

这个问题还是很有深度的。

毕竟 Range Opreator 不是每个人都掌握的,好多老手都没用过。

作者: flw   发布时间: 2011-05-26