因此,在以下情况中,我有一些问题可以确定Perl的作用:
while(1){
$inputLine=<STDIN>
#parse $inputLine below
#BUT FIRST, I need to check if $inputLine = EOF
}
Run Code Online (Sandbox Code Playgroud)
在我得到明显的使用答案之前while(<>){},让我说有一个非常强大的理由,我必须做上述事情(基本上设置一个警报来中断阻止,我不希望代码混乱的例子).
有没有比较$inputLine == undef(因为我认为这是STDIN最后返回的).
谢谢.
Gre*_*con 11
在你的循环中,使用
last unless defined $inputLine;
Run Code Online (Sandbox Code Playgroud)
定义了EXPR
定义返回一个布尔值,告知EXPR是否具有未定义值以外的值
undef.如果EXPR不存在,$_将进行检查.许多操作返回
undef以指示失败,文件结束,系统错误,未初始化的变量和其他异常情况.此功能允许您区分undef其他值.(一个简单的布尔测试不会区分undef零,空字符串,并且"0"都是同样错误的.)注意,因为它undef是一个有效的标量,它的存在并不一定表示异常条件:当它的参数是一个时pop返回undef空数组,或者当要返回的元素恰好时undef.
| 归档时间: |
|
| 查看次数: |
15371 次 |
| 最近记录: |