Thread Einlesen von Zahlenfolgen mit anschliessender Weiternutzung (5 answers)
Opened by Thomas at 2009-06-15 16:09

pq
 2009-06-15 16:17
#122505 #122505
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
hallo,
bitte benutze in zukunft code- oder perl-tags, um code zu kennzeichnen (siehe unsere FAQ).

falls noch nicht gelesen, empfehle ich:
Wiki:perlintro
Wiki:UseStrict

auch noch ins auge gesprungen ist mir die verwendung von chop. chop verwendet man, um genau ein zeichen am ende eines strings zu entfernen.
um ein zeilenende-zeichen zu entfernen, verwendet man stattdessen chomp. dadurch geht man auch sicher, dass man nicht zuviel entfernt (es gibt auch - kaputte - dateien, die am ende der letzten zeile kein newline haben.)

dann ist mir zeile 17 ins auge gefallen:
Code: (dl )
split(/;/;/;/; $line);

das ist kein gültigtes perl. willst du an einem semikolon splitten?
Code (perl): (dl )
my @var = split /;/, $line;

das ist lesbarer und ausserdem auch noch gültiger code. und benutzt nebenbei my(), von welchem du im oben verlinkten UseStrict artikel erfährst.

edit: und am ende von zeile 16 hast du auch ein semikolon vergessen. also kompilieren sollte das programm schon, bevor du es uns vorsetzt und fragen zu leeren variablen stellst. ich gehe davon aus, dass es bei dir läuft und du nicht korrekt kopiert hast. aber dadurch weiss hier keiner, wie der code nun in wirklichkeit aussieht und deshlalb ist es müssig, über die fehlerquelle nachzugrübeln.
Last edited: 2009-06-15 16:21:23 +0200 (CEST)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Einlesen von Zahlenfolgen mit anschliessender Weiternutzung