Friday, October 14, 2011

Perl - ( if ) [ testing if uninitialized variable! ]


#!/usr/bin/perl

use strict;
use warnings;
my $key ; not initialized

if($key != 0){ # line 7
    print "1ok\n";
}
if($key != ''){  # line 10
    print "2ok\n";
}
if($key ne 0){ # line 13
    print "3ok\n";
}
if($key ne ''){ #line  16
    print "4ok\n";
}
if($key){ # line 19
    print "5ok\n";
}

resul


$ perl tmp.pl
Use of uninitialized value $key in numeric ne (!=) at tmp.pl line 7.
Argument "" isn't numeric in numeric ne (!=) at tmp.pl line 10.
Use of uninitialized value $key in numeric ne (!=) at tmp.pl line 10.
Use of uninitialized value $key in string ne at tmp.pl line 13.
3ok
Use of uninitialized value $key in string ne at tmp.pl line 16.


--------------------------------------------------------------------------------------------------------------------------------

#!/usr/bin/perl

use strict;
use warnings;
my $key = 1 ;  initialized

if($key != 0){
    print "1ok\n";
}
if($key != ''){
    print "2ok\n";
}
if($key ne 0){
    print "3ok\n";
}
if($key ne ''){
    print "4ok\n";
}
if($key){
    print "5ok\n";
}

result 

$ perl tmp.pl

1ok
Argument "" isn't numeric in numeric ne (!=) at tmp.pl line 10.
2ok
3ok
4ok
5ok
--------------------------------------------------------------------------------------------------------------------------------

0 comentários:

Post a Comment