• Hallo!

    Wenn ich ein struct Y habe, welches selbst wieder einen Zeiger x enthält, welches auf ein globales objekt zeigt, und dieses struct Y dynamisch erzeuge, und später wieder lösche (free) - muss ich dann:

    1) meinen zeiger x auch dynamisch erzeugen?
    2) wenn ja, warum? weil ich doch dann keine möglichkeit mehr hätte, diesen zeiger über free loszuwerden. da er auch das globale objekt zeigt, welches ich erhalten möchte.

    (danke..)

  • Es ist völlig legitim, x nicht mit malloc, sondern mit dem Adreßoperator & zu initialisieren, solang das Objekt, auf das x zeigt, eine hinreichend lange Lebensdauer besitzt (wenn es global ist, dann ist das der Fall, denn globale Objekte leben über das ganze Programm).
    Dann mußt du x nicht gesondert freigeben.

    *plantsch*

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!