À (at) Thu, 2 Oct 2008 14:52:34 +0200,
"kurtz_le_pirate" <kurtzlepirate@yahoo.fr> écrivait (wrote):
kurtz_le_pirate wrote:
bonjour,
j'ai un tableau a deux dimensions. chaque élément est un hash que je
remplis comme ça :
my @tableau;
...
my $record={};
$record->{valeur}=' ';
$record->{liste}=[1,2,3,4,5,6,7,8,9];
$record->{card}=9;
$tableau[$ligne][$colonne]=$record;
mais je ne sais pas comment accéder à la xième valeur du tableau dans
la clé {liste} :(
$tableau[..][..]{liste}[x] bien sûr ne fonctionne pas.
tout comme, pour avoir la taille, le #???$tableau[..][..]{liste}???
bon, pour accéder à la valeur, j'ai trouvé :
@{$tableau[$ll][$cc]{liste}}[x]
Non ! Aucune des deux formulations ne peut fonctionner avec 'x', c'est
sûr. Il vaut donc mieux toujours montrer du *vrai* code ! Ainsi que
les éventuels messages d'erreur associés (avec les bons numéros de
lignes) : ça aide !
Le code ci-dessous fonctionne très bien :
##########################
#!/usr/bin/perl -w
use strict;
use warnings;
my @tableau;
my $record = {};
$record->{liste} = [1..9];
$tableau[1][2] = $record;
print "4e elements: ", $tableau[1][2]{liste}[3], "\n";
print "Nb elements: ", scalar @{$tableau[1][2]{liste}}, "\n";
##########################
--
Paul Gaborit - <
http://perso.enstimac.fr/~gaborit/>
Perl en français - <
http://perl.enstimac.fr/>