perl 命令行参数判断错误

居然有人在书上这样写,请问可以写成
if
else if #而不用elsif
else
if语句有三种格式:
1 --> if ( condition ) expression
2 --> if ( condition ) expression1 else expression2
3 --> if ( condition1 ) expression1
         elsif ( condition2 ) expression2
         elsif ( condition3 ) expresssion3
         ......                        ......
         elsif ( conditionm ) expressionm
         ......                        ......
         else   expressionn

建议你有时间看一下:《Perl语言入门》


QUOTE:
原帖由 dynamic516 于 2007-11-12 14:57 发表
晕,这个流程判断怎么又和C不一样,还是语法错误!
知道的给俺点下。

*******************************************

while ($#ARGV != -1)
{
        if($ARGV[0]=~ /-h/i){
                        #if($ARGV[0] eq "-h") # err ...

我的天,还问怎么不一样,本来一个是perl一个是C,怎么会一样嘛
C能用,perl不能用再正常不过了,能通用的,你应该感到庆幸,不过也要防止由此造成的误用
对了,对于语句,perl里面都需要大括号
即使if这样后跟单独的语句也需要大括号,习惯了就好
else也一样
谢谢楼上各位的回答,只是有看见
if
else if
这种写法用在perl介绍性的书中, Perl语言学习(第三版中文版).chm,
还是在这里下载的呢,呵呵,不知道
if   
else if()
{
}
else if()
{
}
else

这样的写法到底正确与否?

目前正在抽时间看perl入门,时间不多抽时间自己学的,还希望这里的朋友关键地方给俺点一下
不是懒惰不看书,而是实在没有时间把细节部分看完,只希望自己能有perl的正则分析文件就行了
,他的高级用法以后有时间再说吧,呵呵,非常感谢各位……
上面提到的树种有这样的写法:
#*************************************************************************
4.2.1 if 和 else 语句
if 语句比较直接了当。因为 BLOCK 们总是用花括弧包围,所以从不会出现混淆哪一个 if 和 else 或 elsif 有效的情况。在给出的任意 if/elsif/else BLOCK 里,只有第一个条件BLOCK 才执行。如果没有一个为真,而且存在 else BLOCK,则执行之。一个好习惯是在一个 elsif 链的最后放上一个 else 以捕捉漏掉的情况。

如果你用 unless 取代 if,那么它的测试是相反的,也就是说:


   unless ($x == 1) ...
等效于


   if($x != 1) ...
或者是难看的:


   if(!($x == 1)) ...
在控制条件里定义的变量,其范围只扩展到其余条件的范围,包括任何随后可能存在的 elsif 和 else 子句,但是不会超过这个范围:


   if (( my $color = <STDIN> )  =~ /red/i ) {
      $value = 0xff0000;
   }
   else ($color =~ /green/i) {
      $value = 0x00ff00;
   }
   else if ($color =~ /blue /i ){
      $value = 0x0000ff;
   }
   else {
      warn "unknown RGB component `$color', using black instead\n";
      $value = 0x000000;
   }
在 else 以后,$color 变量将不再位于范围之内。如果你想把范围扩大一些,那么请在条件之前定义该变量。
#*************************************************************************
这里的高手给各正解,这可是书啊,如果错误真的会害很多人走弯路的,反复的测试查资料证明确认语法!
perljoker  喜欢宫崎骏,俺也是艾……,现在电脑里还有好几部呢,没事就爱看看,有些好感人!
自己顶一下,perl中到底有没有下面的写法?
if   
else if()
{
}
else if()
{
}
else
不正确...
天啊,书上居然敢这么写,看
Perl语言学习(第三版中文版).chm
这本书的朋友们需要注意了,建议作者纠正下
在perl版块就有下载哦