When you run the first code sample in your post you will see this:
$ ./11112518.pl Reference found where even-sized list expected at ./11112518.pl line 7 +.
That message is displayed because you used warnings - which was the right thing to do. This is telling you that instead of assigning a hash to %hash (a hash is an even-sized list) you are instead assigning a reference. As stevieb pointed out that's because you have enclosed the right-hand side in braces instead of brackets.
It is good that you used warnings but it's only useful if you pay attention to and try to understand the warnings which are printed. If you don't understand them, you can always use diagnostics for more detailed explanations of the potential problems.
In reply to Re: Print values and keys from hash of hashes.
by hippo
in thread Print values and keys from hash of hashes.
by Sami_R
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |