Diskussion:LIP 19100: Unterschied zwischen den Versionen

Aus UUGRN
(Wirrungen von Perl)
(kein Unterschied)

Version vom 25. Juli 2007, 20:34 Uhr

19107

Perl arbeitet intern also 4stellig, bietet aber einen vorsätzlich falschen (-1900) Wert für die Jahreszahl an, denn alle Welt will 2stellig arbeiten.

Code
#! /usr/bin/perl
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
print $year."-".$mon."-".$mday."\n";

Ausgabe:

$ ./19100.pl
107-6-25

Diese Form der "Vereinfachung" führte in vielen Programmen zu Konstrukten wie

"19".$year

anstatt

1900+$year

... was wiederum oftmals zur Ausgabe von "19100" führte. Man darf sich mit gesundem Menschenverstand fragen, warum die Funktion eine semi-2stellige Jahreszahl zurückliefert, damit dann im Code außen herum die unterschlagenen 1900 Jahre wieder addiert werden können. Braindead!


--rabe 22:34, 25. Jul. 2007 (CEST)