in reply to Re^2: Undef and Unitialized Issue
in thread Undef and Unitialized Issue
That particular warning comes about because this statement:
push @TEMP, $cur_amt, $past_amt;
towards the end of sub formatC2 is called with $past_amt undefined. You can fix this by providing $past_amt with a default value near the start of the subroutine:
$past_amt = '';
I tracked this down by looking at the contents of @OUTPUT after the first while loop finishes. As fishmonger says, you can use Data::Dumper or Data::Dump for this. I prefer Data::Dump:
use Data::Dump; ... while (<$fh>) { chomp; #Removes the control character my @LINES = split(/\n/, $_, -1); #Split on line break creating + array my @RECORDS = formatC2(@LINES); $OUTPUT[$seq_num] = [@RECORDS]; last; } close $fh; dd \@OUTPUT; exit(0);
The last ensures that I get only the first iteration of the while loop, and the exit helps me to see what I need to see (in this case, the contents of @OUTPUT) by omitting everything that comes after.
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Undef and Unitialized Issue
by Pharazon (Acolyte) on Apr 02, 2015 at 17:36 UTC | |
by marinersk (Priest) on Apr 02, 2015 at 20:31 UTC | |
by soonix (Chancellor) on Apr 07, 2015 at 08:05 UTC |