lokale Struct übergeben ;)



  • Hallo!

    Gibt es eine Möglichkeit eine Struct einer anderen zu Übergeben? also so zb:

    int iStructlokal()
    {
        typedef struct 
        {
            int iZahl;
        }stZahlen;
    
        stZahlen stZahl_1 = {1};
    
        // Jetzt ein Funktionsaufruf und dabei die Struct und die Instanz übergeben irgendwie ^^
    
        return 0;
    }
    
    int iFunktion(.......)
    {
        stZahl_1->iZahl = 22;
        return 0; 
    }
    

    Kann man das irgendwie realisieren??



  • typedef struct 
        { 
            int iZahl; 
        }stZahlen; 
    
    int iStructlokal() 
    { 
    
        stZahlen stZahl_1 = {1}; 
    
        // Jetzt ein Funktionsaufruf und dabei die Struct und die Instanz übergeben irgendwie ^^ 
    
        iFunktion(&stZahl_1);
    
        return 0; 
    } 
    
    int iFunktion(stZahlen *stZahl_1) 
    { 
        stZahl_1->iZahl = 22; 
        return 0; 
    }
    

    wenn du ein struct *lokal* in eine Funktion deklarierst, dann willst du, dass kein anderer dieses struct verwendet, oder?



  • -.-'
    Danke für deine Beteiligung an meinem Problem, aber ich hab nicht umsonst LOKAL gesagt 😉

    Kann man aber andere bestimmte funktionen erlauben diese Dennoch zu nutzen (Also zu übergeben)?

    oder kann man, wen man diese global hält, bestimmen, wer darauf zugreifen darf?



  • oder kann man, wen man diese global hält, bestimmen, wer darauf zugreifen darf?

    Nur über eine klare Abgrenzung durch Header-Dateien. Mit Header Dateien und zugehörigen Source Dateien ist man durchaus in der Lage so etwas wie primitive Klassenfunktionen mit private und public zu simulieren.


Anmelden zum Antworten