@format_c: da hast du recht; es gibt uebrigens noch ein paar weitere, die eine niedrigere bindung als && bzw. || haben:
.. ... ?: = += -= *= .= usw. , => listenoperatoren not, and, or, xor
(ich hoffe, ich habe so ziemlich alle erwischt)
das ganze zeug braucht man sich aber nicht merken, weil 'or' die niedrigeste bindungskraft hat, und 'and' ein klein bisschen hoeher, und da kann man sich klammern so gut wie immer sparen und ist normalerweise auf der sicheren seite.
Ich verwende || bzw. && nur in konstrukten wie z.B.
my $value = shift || 'defaultValue'; # ev. achtung auf 0... warte ungeduldig auf // bzw. //=
# oder
$value ||= 'defaultValue'; # ev. achtung auf 0
sonst verwende ich || bzw. && nie; perl kann eh schon ein arger zeichensalat sein:
if ($x && $y || $z && $r || $p) {
finde ich haesslich, auch wenn es ein C-Programmierer schneller kapiert; aber die sprache heisst Perl und nicht C, und Perl ist viel reicher an syntax als C... warum die dann nicht zur besseren lesbarkeit einsetzen?
if ($x and $y or $z and $r or $p) {
finde ich besser lesbar, aber das wuerde ich sogar mit klammern schreiben
if ( ($x and $y) or ($z and $r) or $p) {
dann sieht man schon auf den ersten blick alles, und braucht nicht mehr nachzudenken...\n\n
<!--EDIT|Strat|1106778826-->