Re: Loesungsansatz fuer Libaries?
Von: Erich Fruehstueck (ef@synthesis.co.at) [Profil]
Datum: 31.10.2007 07:03
Message-ID: <pan.2007.10.31.06.03.21@synthesis.co.at>
Newsgroup: de.comp.lang.c
Datum: 31.10.2007 07:03
Message-ID: <pan.2007.10.31.06.03.21@synthesis.co.at>
Newsgroup: de.comp.lang.c
Am Tue, 30 Oct 2007 21:36:01 +0100 schrieb Markus Wichmann: > Rainer Weikusat schrieb: >> Markus Wichmann <nullplan@gmx.net> writes: >>> Roland Damm schrieb: >>>> Kann eine Library nicht eigene 'globale' Variablen haben? >>> Kommt auf die Art der Lib an. Da Libs außerhalb von C99 liegen, gibt >>> es hier ein paar Spezis. Also Windows-DLLs können globale Variablen >>> haben, statische Libraries auch, da es sich bei ihnen ja nur um in >>> anderer Form aufbewahrte Codefragmente handelt, aber UNIX-SOs haben >>> keinen eigenen Speicher, also auch keine eigenen globalen Variablen. >> >> <mode=Gebetsmuehle> >> Der Begriff 'globale Variable' ist durch C nicht definiert. Er hat auch >> keine einheitliche, uebliche Bedeutung. </> >> >> > if exists("g:c_standards_fanatic") > %s|\<globale Variable\>|außerhalb jedes Bereiches definierte Variable|g > endif Gerade das ist das Problem mit dem Begriff "globale Variable", er wird gern so definiert. Im obigen Zusammenhang ist aber nicht relevant, ob die Variable außerhalb eines Blocks definiert ist, sondern ob sie external linkage besitzt und ob sie in einem shared memory Bereich abgelegt wurde. Die letzte Eigenschaft (shared memory) verläßt den Aussagenbereich des C-Standards. Grüße Erich -- EFEU 3.1 is released! Get the open source from http://efeu.cybertec.at.[ Auf dieses Posting antworten ]
Antworten
- Roland Damm (31.10.2007 08:52)
- Claus Reibenstein (31.10.2007 09:13)
