Thank you SO much...I love it that guys who know what they're doing are willing to help us newbies!!!!!
JC "Chas Owens" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED].; > On Sat, 2002-03-02 at 11:16, John Crockett wrote: > > I'm sure this is such a simple thing, most of you-all are laughing at me > > right now. > > > > main_program > > { > > blah; > > blah; > > > > %input_parm = (); > > $input_parm{PRICE} = "42.00"; > > $input_parm{PRODUCT_ID} = "1306"; > > $input_parm{INVENTORY_LOC} = "107"; > > $input_parm{CUSTID} = "23489"; > > > > my_subroutine(%input_parm); > > > > more irrelevant code; > > . > > . > > . > > } > > > > > > sub my_subroutine(%) > > { > > This is where I have trouble. I can't figure out the notation for > > reading the hash! > > } > > > > > > Thanks for your help. > > > > John Crockett > > [EMAIL PROTECTED] > > > > (Take out NoSpam to e-mail me) > > Firstly, you must declare prototypes _before_ you use them or they will > have no effect. > > Secondly, you should rarely, if ever, use prototypes. They are a nasty > bit of magic that is poorly understood by many and not yet needed by > most. > > Instead use one of the following two methods: > > When a hash is evaluated in a list context it is transformed into a list > of alternating of keys and values. The constructor for a hash takes a > list of (key, value) pairs. So the code to pass a hash looks like this: > > <example> > #!/usr/bin/perl > > use strict; > > my %hash = ( > key1 => 'value 1', > key2 => 'value 2', > key3 => 'value 3', > ); > > print_hash(%hash); > > sub print_hash { > my %hash = @_; > > foreach my $key (sort keys %hash) { > print "$key => $hash{$key}\n"; > } > } > </example> > > There are two problems with passing hashes this way: it takes time to > decompose and rebuild the hash and the hash eats all of the parameters. > So people often use references like this: > > <example> > #!/usr/bin/perl > > use strict; > > my %hash = ( > key1 => 'value 1', > key2 => 'value 2', > key3 => 'value 3', > ); > > print_hash(\%hash, '=>'); > > sub print_hash { > my ($hash, $connector) = @_; > > foreach my $key (sort keys %$hash) { > print "$key $connector $$hash{$key}\n"; > } > } > </example> > > -- > Today is Sweetmorn the 61st day of Chaos in the YOLD 3168 > > > Missile Address: 33:48:3.521N 84:23:34.786W > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]