perl中if判断的困惑
原创
©著作权归作者所有:来自51CTO博客作者时代码农的原创作品,请联系作者获取转载授权,否则将追究法律责任
今天对学习了perl的if判断结构,弄懂了以下问题:
1,if判断与操作语句放在一行,意思是if为操作语句的修饰符。
比如:
print "$_" if ($_);
同样是对$_进行逻辑判断,如果为真,则打印$_。
2,如下语句:
if (<STDIN>){
print;
}
按if的逻辑判断规则,如果我输入了0,那么不应该打印任何内容,输入其他任意字符,都应该打印出来。可是无论我输入什么内容,都会被打印出来,包括只输入一个字符0。
后来发现真正的原因是,当你输入0,然后按回车,输入的内容实际上是两个字符,即0和回车符。用<STDIN>,永远不可能只得到一个字符0,因为后面永远都跟着一个回车符。
用if来判断的时候,得到的结果总为真。
上一篇:perl中的foreach结构
下一篇:Java如何得到某一天是星期几
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
最近的困惑
我发现我有很多困惑,有很多问题,很多疑惑不知道该去问谁,也许我想的太多,但是我不喜欢漫无目的的去做一
语言 数据库 算法 java 百度 -
inb的困惑
示例1:# unsigned char fun (unsigned s
汇编 byte 嵌入式 fun 语言 -
perl中的foreach结构
perl中的foreach结构
职场 休闲 perl -
Perl 中的对象
Perl 中的对象让我们开始在Perl中实现...
perl 数据结构 多态性 面向对象 垃圾收集