test pour "uninitialized value"
  Home FAQ Contact Sign in
fr.comp.lang.perl only
 
Advanced search
POPULAR GROUPS

more...

fr.comp.lang.perl Profile…
 Up
test pour "uninitialized value"         


Author: kurtz_le_pirate
Date: Apr 4, 2008 06:56

bonjour,

j'utilise le module Filesys::DfPortable pour récupérer les volumes
sur des disques. ça fonctionne plutôt bien sauf lorsqu'un serveur
n'est pas accessible.

je me retrouve avec un "Use of uninitialized value in division (/)
at...52"
...
51 : my $refInfos = dfportable($thisServer);
52 : my $freeSize = ($refInfos->{bfree})/1024/1024;
...

et je ne sais pas comment tester cette condition :(
undef() ne semble pas convenir.

une idée ?

--
klp
"bug : probleme d'interface entre la chaise et le clavier"
4 Comments
Re: test pour "uninitialized value"         


Author: kurtz_le_pirate
Date: Apr 4, 2008 07:20

kurtz_le_pirate wrote:
> bonjour,
>
> j'utilise le module Filesys::DfPortable pour récupérer les volumes
> sur des disques. ça fonctionne plutôt bien sauf lorsqu'un serveur
> n'est pas accessible.
>
> je me retrouve avec un "Use of uninitialized value in division (/)
> at...52"
> ...
> 51 : my $refInfos = dfportable($thisServer);
> 52 : my $freeSize = ($refInfos->{bfree})/1024/1024;
> ...
>
>
> et je ne sais pas comment tester cette condition :(
> undef() ne semble pas convenir.
>
>
> une idée ? ...
Show full article (0.69Kb)
no comments
Re: test pour "uninitialized value"         


Author: Paul Gaborit
Date: Apr 4, 2008 07:44

Ă€ (at) Fri, 4 Apr 2008 15:56:52 +0200,
"kurtz_le_pirate" écrivait (wrote):
> j'utilise le module Filesys::DfPortable pour récupérer les volumes
> sur des disques. ça fonctionne plutôt bien sauf lorsqu'un serveur
> n'est pas accessible.
>
> je me retrouve avec un "Use of uninitialized value in division (/)
> at...52"
> ...
> 51 : my $refInfos = dfportable($thisServer);
> 52 : my $freeSize = ($refInfos->{bfree})/1024/1024;
> ...
>
>
> et je ne sais pas comment tester cette condition :(
> undef() ne semble pas convenir.

undef ne peut pas convenir puisque ce n'est pas une condition ! ;-)

Par contre 'defined' me semble tout Ă  fait convenir :
Show full article (1.01Kb)
no comments
Re: test pour "uninitialized value"         


Author: Marc Espie
Date: Apr 4, 2008 08:27

In article ,
Paul Gaborit wrote:
>undef ne peut pas convenir puisque ce n'est pas une condition ! ;-)
>
Aparte: d'ailleurs, c'est bizarre, ca serait bien dans l'esprit du
langage que ca marche quand meme.
no comments
Re: test pour "uninitialized value"         


Author: Paul Gaborit
Date: Apr 4, 2008 09:18

Ă€ (at) Fri, 4 Apr 2008 15:27:30 +0000 (UTC),
espie@lain.home (Marc Espie) écrivait (wrote):
> In article ,
> Paul Gaborit wrote:
>>undef ne peut pas convenir puisque ce n'est pas une condition ! ;-)
>>
> Aparte: d'ailleurs, c'est bizarre, ca serait bien dans l'esprit du
> langage que ca marche quand meme.

Disons que ça marche :

my $t;
print "not defined\n" if $t eq undef;
print "not defined\n" if $t == undef;
$t = 1;
print "defined\n" if not $t eq undef;
print "defined\n" if not $t == undef;

Mais Perl n'est quand mĂŞme pas content et crie (avec raison) si on
utilise 'use warnings' ou l'option '-w'.

Il vaut donc mieux utiliser 'defined'...
Show full article (0.85Kb)
no comments