Abarbeitung logischer Verknüpfungen

hi,
wie ist die Abarbeitung logischer Verknüpfungen während der Laufzeit?
Von rechts "rückwärts" nach links?

wird dann z.B. bei
if( a && b && c && d) {...}
die Bedingung d als erste untersucht und, wenn d FALSE ist, die if-Bedingung dann auch sofort abgebrochen?
Oder wird sowieso alles komplett ausgewertet?

Von links nach rechts. Beim UND wird abgebrochen wenn eine Bedingung false ist und bei ODER wenn eine Bedingung true ist. Das nennt sich Kurzschlussauswertung:

ah ok, danke, also genau anders rum als ich dachte.
Dann also die am wahrscheinlichsten falscheste Bedingung bei &&
oder die am wahrscheinlichsten richtigste Bedingung bei ||
möglichst an eine der ersten, linksten Stellen...!

Man kann es auch zu verwenden um sich bestimmte if-Abfragen zu sparen. Siehe der Link mit der Englischen Wikipedia. Da wird das ausgenutzt um erst auf NULL oder 0 abzufragen, damit die zweite Bedingung dann nicht überprüft wird. z.B. wenn die zweite Operation eine Division durch 0 sein könnte oder der Zugriff auf einen NULL-Pointer.

ja, sehr gut, habe ich gelesen!
ich hatte bisher immer eine if-Abfrage davor gestellt, aber so geht es ntl schneller 8)