🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.gnu
Article #31

Re: was macht alloca?

#31
From: Heike C Zimmerer
Date: Wed, 02 Sep 1992 18:25
31 lines
1667 bytes
In article <1992Sep01.065949.23504@rubikon.han.de> toad@rubikon.han.de 
(Peter Cleve) writes:

>Wenn du du Block durch Function austauscht liegst du richtig.
>Nur absolut bescheuerte Compiler werden Variablen die lokal fuer einen
>Block definiert sind beim Blockeintritt/austritt anlegen/loeschen.

So bescheuert finde ich das nicht. Das Anlegen/Loeschen kostet nicht viel
Assemblerinstruktionen (hier ists genau eine (1)).

Neben dem Scope gibt es aber noch einen wichtigen Grund, Variable
in einem lokalen Block zu definieren: Speicherplatz.
Bei einer Konstruktion der Form
    if(..)
    {
        char a[100000];
            :
    }
    else
    {
        int i[100000];
            :
    }
muesste Dein Compiler die Laenge aller so deklarierten Arrays 
fuer die Dauer der ganzen function im lokalen Stack freihalten.
Wenn das mein Compiler machen wuerde, waers fuer mich schon ein
Grund, den Hersteller anzumeckern.

--
Heike C. Zimmerer                                      hcz@reto.stgt.sub.org
reto Industrieelektronik GmbH       Kornbergstr. 18       W-7000 Stuttgart 1
Technical Details
Message-ID: <5180@reto.stgt.sub.org>
Path: arc1-ca.pugleaf.net!sparky!uunet!gossip.pyramid.com!decwrl!sdd.hp.com!nigel.msen.com!yale.edu!ira.uka.de!Germany.EU.net!rz.uni-hildesheim.de!agsc!nadia!aragon.stgt.sub.org!reto!hcz
References: <1992Aug19.082419.13150@newsserver.rrzn.uni-hannover.de> <920829440@monad.swb.de> <SPACE.92Aug31103804@ncc1701.stgt.sub.org> <1992Sep01.065949.23504@rubikon.han.de>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!gossip.pyramid.com!decwrl!sdd.hp.com!nigel.msen.com!yale.edu!ira.uka.de!Germany.EU.net!rz.uni-hildesheim.de!agsc!nadia!aragon.stgt.sub.org!reto!hcz
From: hcz@reto.stgt.sub.org (Heike C Zimmerer)
Newsgroups: de.comp.gnu
Subject: Re: was macht alloca?
Message-ID: <5180@reto.stgt.sub.org>
Date: 2 Sep 92 18:25:55 GMT
References: <1992Aug19.082419.13150@newsserver.rrzn.uni-hannover.de>  <920829440@monad.swb.de> <SPACE.92Aug31103804@ncc1701.stgt.sub.org> <1992Sep01.065949.23504@rubikon.han.de>
Organization: reto GmbH
Lines: 31