Alternative Schreibweise von Kontrollstrukturen in C

11/12/2007 - 21:27 von Florian Hurlbrink | Report spam
Hallo,
ich habe an Hand eines fremden Quelltextes und durch try & error folgendes
herausgefunden:

Statt
if (bedingung)
{
befehl1();
befehl2();
}
kann man auch schreiben
bedingung&&(befehl1(), befehl2());

bzw. statt
if !(bedingung)
{
befehl1();
befehl2();
}
kann man auch schreiben
bedingung||(befehl1(), befehl2);

Gibt es nur einen Befehl, so geht auch bedingung&&befehl() bzw.
bedingung||befehl().

Was hat das für einen Sinn?
 

Lesen sie die antworten

#1 Marcel Müller
11/12/2007 - 21:52 | Warnen spam
Hallo,

Florian Hurlbrink schrieb:
Gibt es nur einen Befehl, so geht auch bedingung&&befehl() bzw.
bedingung||befehl().

Was hat das für einen Sinn?



was ist das für eine Frage? Die Abbildung von Programmablàufen zum Code
ist noch nie eineindeutig gewesen.

In anderen Programmiersprachen wie Perl ist das durchaus üblich. Die
Logik ist z.B.:
"machwas" or "Fehler"

Zugegeben, ich mag solche meist schlechter lesbaren Varianten auch nicht
gerne. Aber es ist definitiv garantiertes Verhalten, solange die
Datentypen stimmen.


Marcel

Ähnliche fragen