[linux-l] Re: do{ . } while (0)
Jan-Benedict Glaw
jbglaw at lug-owl.de
Do Nov 24 09:05:09 CET 2005
On Thu, 2005-11-24 07:52:34 +0000, Rocco Rutte <pdmef at cs.tu-berlin.de> wrote:
> >...und viele derer, die es wissen, benutzen es wissentlich nicht. Ich
> >finde es ganz schön, wenn man einmal, am Anfang der Funktion, sieht,
> >welche Variablen benutzt werden. Mal schnell on the fly noch ein paar
> >weitere benutzen zu können ist nett, erhöht aber IMHO nicht die
> >Lesbarkeit.
>
> NACK, weil es durchaus Situationen gibt, in denen man das will. Wenn man
> längere Funktionen hat im Sinne von "passt nicht auf einmal auf den
> Schirm", dann kann das Feature praktisch sein, wenn man die Variable
> lokal in einem Block definiert, der nur selten ausgeführt wird, statt
> sie global in der ganzen Funktion sichtbar zu machen. Dann kann man
> nämlich auch lange mit Suchen und Zweifeln verbringen, wieso Variable XY
> jetzt überhaupt gebraucht wird.
Funktion zerlegen? Hilft bei unübersichtlich langen Funktionen
manchmal...
> Oder wenn man in einer von X case-Anweisungen mal eine Variable braucht,
> macht es mehr Sinn, IMHO, da einen Block zu nehmen statt sie in der
> ganzen Funktion zu haben.
switch () {} bringt selbst inen Block mit, man kann also direkt darin
Variablen definieren:
:
:
switch (foo) {
int i;
case CASE1:
:
break;
case CASE2:
:
break;
}
:
:
MfG, JBG
--
Jan-Benedict Glaw jbglaw at lug-owl.de . +49-172-7608481 _ O _
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg _ _ O
für einen Freien Staat voll Freier Bürger" | im Internet! | im Irak! O O O
ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 189 bytes
Beschreibung: Digital signature
URL : <https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/attachments/20051124/67d490ee/attachment.sig>
Mehr Informationen über die Mailingliste linux-l