=head1 NAME
-perlfaq4 - Data Manipulation ($Revision: 1.8 $, $Date: 2001/11/09 08:06:04 $)
+perlfaq4 - Data Manipulation ($Revision: 1.9 $, $Date: 2001/12/07 21:17:58 $)
=head1 DESCRIPTION
optimized for speed on some operations, and for at least some
programmers the notation might be familiar.
-=over 4
-
=item B<How do I convert Hexadecimal into decimal:>
Using perl's built in conversion of 0x notation:
$int = 0xDEADBEEF;
$dec = sprintf("%d", $int);
-
+
Using the hex function:
$int = hex("DEADBEEF");
The remaining transformations (e.g. hex -> oct, bin -> hex, etc.)
are left as an exercise to the inclined reader.
-=back
=head2 Why doesn't & work the way I want it to?
=head2 How can I know how many entries are in a hash?
If you mean how many keys, then all you have to do is
-take the scalar sense of the keys() function:
+use the keys() function in a scalar context:
- $num_keys = scalar keys %hash;
+ $num_keys = keys %hash;
-The keys() function also resets the iterator, which in void context is
-faster for tied hashes than would be iterating through the whole
-hash, one key-value pair at a time.
+The keys() function also resets the iterator, which means that you may
+see strange results if you use this between uses of other hash operators
+such as each().
=head2 How do I sort a hash (optionally by value instead of key)?
=head2 How can I use a reference as a hash key?
-You can't do this directly, but you could use the standard Tie::RefHash
+You can't do this directly, but you could use the standard Tie::Refhash
module distributed with Perl.
=head1 Data: Misc