Lokale Variable



  • guten tag,

    ich habe zwei funktionen:
    Funktion 1:

    int main(){
    double x=100;
    for(x;x>0;x--){
    ...
    }
    ...
    }
    

    Funktion 2:

    void f(){
    double i;
    i=1/x;
    /*
    hier wird eine berechnung durchgeführt.
    */
    ...
    }
    

    Wie kann ich den Wert von x aus Funktion 1 an die Variable i in Funktion 2 übergeben. Da x immer eins weniger wird, muss das i auch den entsprechenden Wert haben.

    Kurz gesagt: Die Variable i in Funktion 2 muss an die Variable x in Funktion 2 gekoppelt sein.

    Globale Variablen zu definieren hilft mir nicht besonders weiter.

    Vielen Dank für eure Hilfe
    simsa



  • Parameter?

    void f(double x)
    {
        double i = 1/x;
        /* hier wird eine berechnung durchgeführt. */
    }
    
    int main()
    {
        double x = 100;
        for(; x>0; x--)
        {
            f(x); /* oder so */
        }
    }
    


  • einfach funktion 1 mit funktion 2 vertauschen???

    ist das absicht, dass das eine x in der forschleife weggelassen wurde?



  • Schau mal die erste Zeile an: f hat jetzt einen Parameter.
    Vertauscht wurde nur, um sich die Deklaration zu sparen.
    Das x in der Schleife war bedeutungslos, daher weg.



  • Hallo wn,

    das hilft mir auch nicht weiter. beim kompilieren kommt folgender Fehler:

    ...c:127: error: conflicting types for ‘f’
    ...c:30: error: previous declaration of ‘f’ was here

    ist es vielleicht möglich, wenn ich dir den quelldatei zuschicke, dass du rüber guckst??

    es ist momentan sehr wichtig für mich, das der code läuft.

    falls ja, könntest du bitte mir deine emailadresse senden???

    gruß
    simsa



  • simsa schrieb:

    ist es vielleicht möglich, wenn ich dir den quelldatei zuschicke, dass du rüber guckst??

    poste den code doch hier, oder isser zu lang?
    🙂


Anmelden zum Antworten