Thread Warum Use of uninitialized value within @array? (3 answers)
Opened by bianca at 2016-01-04 19:27

bianca
 2016-01-04 19:27
#183392 #183392
User since
2009-09-13
7016 Artikel
BenutzerIn

user image
Hi!
Ich verstehe bei folgendem Script nicht, warum ich Fehler
Quote
Use of uninitialized value within @inhalt in string eq at test.pl line 13.
bekomme.

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/perl
use strict;
use warnings;
use 5.010;

my @inhalt = split //,<<INPUT
A
INPUT
;
say "Gesamt: ".scalar(@inhalt)." Bytes";
for (my $ze = 0; $ze < scalar(@inhalt); $ze ++) {
    my $anzahl = 0;
    while (scalar(@inhalt) > ($ze + $anzahl) && $inhalt[$ze + $anzahl + 1] eq ' ') {
        say "untersuche ".($ze + $anzahl + 1);
        $anzahl ++;
    }
    say "bei Pos. $ze = $anzahl";
}


Aufgrund der Abfrage scalar(@inhalt) > ($ze + $anzahl) - von der ich ausgehe, dass sie zuerst ausgeführt wird, weil sie links vom && steht - darf doch die Abfrage niemals außerhalb des Array's liegen. Wieso tut es das doch?

Der Code ist aus einem Zusammenhang gerissen, bitte nicht wundern.

Auf Windows 7 64 Bit mit Perl This is perl 5, version 18, subversion 4 (v5.18.4) built for MSWin32-x64-multi-thread
10 print "Hallo"
20 goto 10

View full thread Warum Use of uninitialized value within @array?