Re: anfaengerfrage zu pointern




Erich Fruehstueck schrieb:

> "Ingo Menger" <quetzalcotl@xxxxxxxxxxxxxx> wrote:
>
>
> Soweit ich dich richtig verstehe, ist also in dem Code
>
> static int x = 0;
>
> int get_sum (int s);
> {
> x += s;
> return x;
> }
>
>
> die Variable x für Dich global?
> Und ich dachte bisher, Du meinst damit nur Variablen mit externer Bendung.
> So kann man sich mißverstehen. Sorry, aber das widerspricht meinem Empfinden
> für "global".

Nun, dies da oben ist natürlich ein minimaler Extremfall.
Es könnten aber hunderte Funktionen im selben File stehen, die alle
auf x zugreifen.
Und da ist die Situation dann nicht viel besser als wenn es hundert
zusätzliche Files mit je einer Funktion gibt, die alle auf "extern int
x" zugreifen.

> > Möchtest Du behaupten, daß die Variable, auf die stdout verweist,
> > nicht global ist, weil Du sie nicht vor
> >
> > #include <stdio.h>
> >
> > verwenden kannst?
>
> stdout ist keine Variable, sondern ein Makro.

Siehst Du, und deshalb schrieb ich auch "die Variable, auf die stdout
verweist" (noch genauer: auf die der Zeiger, zu dem [die Ersetzung von]
stdout evaluiert, verweist)

Ich wiederhole also die Frage.

> > Mitnichten. Es gibt in C die Gefahren nichtlokaler Variablen, die es
> > auch in allen anderen Sprachen gibt. Darüber hinaus gibt es noch
> > spezielle Gefahren, die auftreten, wenn ich nicht "static" verwende.
>
> Mit deiner Begrifflichkeit schmeist Du dann die durchaus unterschiedlichen
> Gefahren in einen Topf. Das halte ich nicht für gut.

Ich finde das nicht. Ich sehe es immer unter dem Aspekt, daß jemand
die Problematik der "globalen Variablen" aus anderen
Programmiersprachen kennt.
Wenn z.B. jemand von PASCAL kommt, dann muß man ihm nur noch die
zusätzlichen Probleme erklären, die durch das Vorhandensein mehrerer
Übersetzungseinheiten hinzukommen.

> Du wirst mit dieser Definition von "globalen Variablen" nur Mißverständnisse
> ernten. Nie und nimmer wäre ich auf die Idee gekommen, Variablen mit
> interner Bindung darunter zu verstehen.

Ich gebe zu, daß mein Verständnis vielleicht etwas weit ist.
Umgekehrt wäre der Ratschlag: "Nimm immer static, dann hast du keine
Probleme mit globalen Variablen." eben auch irreführend.

.



Relevant Pages

  • Re: LifeCycle - Richtiger Zeitpunkt =?ISO-8859-1?Q?f=FCr?= RewritePath()?
    ... zugreifen - da würde ich dann doch lieber direkt auf ... Lässt es sich denn nicht umgehen, direkt (im Markup) auf die Parameter ... Prev by Date: ... Next by Date: ...
    (microsoft.public.de.german.entwickler.dotnet.asp)
  • Re: throw () in der Signatur?
    ... Beruecksichtigung eventueller alignment-Anforderungen im Speicher ... vollstaendig eingekapselte interne Datenobjekte zugreifen. ... Prev by Date: ... Next by Date: ...
    (de.comp.os.unix.programming)
  • RE: remote zugriff auf E-Mails
    ... > vermutlich auch auf seine Daten zugreifen können. ... > verschiedene Versuche mit TSWEB und dem Cisco VPN Client schlugen fehl. ... Prev by Date: ... Next by Date: ...
    (microsoft.public.de.german.backoffice.smallbiz)
  • Re: Betrug bei Kabel1 Gewinnspiel?
    ... > Da müßte man schon sehr schnell und energisch zugreifen (was ins Auge ... Händler auf der Straße Waren feilbietet ohne Lizenz von der Stadt. ... Prev by Date: ... Next by Date: ...
    (de.soc.recht.strafrecht)
  • =?iso-8859-1?q?Re:_Beyond_Java_Tiger_-_Defekte_und_L=FCcken_in_Java?=
    ... statische Methode auf einem Feld im Class Scope zur gleichen Zeit ... zugreifen kann wie eine Instanz Methode (weil es zwei verschiede Locks ... Prev by Date: ... Next by Date: ...
    (de.comp.lang.java)

Loading