Variable erzeugen
Claudia Meier
- perl
0 Stefan Muenz0 Cheatah
Hallo ich habe hier einen Zähler, bei diesem möchte ich die Funktion der Anzeige der Nullen und den Zählerstand zu einer Variable zusammenfassen und nicht durch den print Befehl ausgeben. Bin eine blutige Anfängerin und bekomme das nicht auf die Reihe.
Claudia
sub akt_counter {
open (COUNT , "+< $data2_dir/counter.txt") die "Kann die Datei nicht öffnen." ;
flock(COUNT,2) if $lock==1 ;
$counter=<COUNT>;
seek(COUNT,0,0);
$counter++ ;
print COUNT $counter ;
close (COUNT) ;
$count = length($counter) ;
for($x=0 ; $x<=$anznull-$count ; $x++) {
print "0" ;
}
print "$counter";
}
Hallo Claudia
Hallo ich habe hier einen Zähler, bei diesem möchte ich die Funktion der Anzeige der Nullen und den Zählerstand zu einer Variable zusammenfassen und nicht durch den print Befehl ausgeben.
Statt:
for($x=0 ; $x<=$anznull-$count ; $x++) {
print "0" ;
}
Mal so:
$Anzeige = "";
for($x=0 ; $x<=$anznull-$count ; $x++) {
$Anzeige = $Anzeige."0";
}
$Anzeige = $Anzeige.$count;
Bei alledem frage ich mich allerdings, wo die Variable $anznull initialisiert wird, und mit welchem Wert?
viele Gruesse
Stefan Muenz
Hi,
Mal so:
$Anzeige = "";
for($x=0 ; $x<=$anznull-$count ; $x++) {
$Anzeige = $Anzeige."0";
}
$Anzeige = $Anzeige.$count;
*hüstel* Achtung, der Optimierer[tm] kommt :-)
$Anzeige .= "0"; # und
$Anzeige .= $count; # weil besser isses
Aber warum nicht einfach:
print ("0" x ($anznull-length($counter))) . $counter;
direkt nach dem Auslesen und Erhöhen des Counters ;-)
Cheatah