Re: Funktionen Rückgabe Kategorie: Programmierung (von nitram - 6.04.2011 9:06) | ||
Als Antwort auf Funktionen Rückgabe von ChristianS - 5.04.2011 22:01 | ||
| ||
> Hallo, > ich habe eine Funktion und möchte einen berechneten Wert zurückgeben. Ich habe mir das an > der geo.Sasu-Funktion abgucken wollen, klappt bei mir aber nicht. Hier die SaSu Funktion: > > int zeit[2] > ... > geo.SaSu(system.year(),system.month(),system.day(), > breitengrad,laengengrad,0,zeit); > ... > > In zeit werden dann die beiden berechneten Werte zurückgegeben. > > Nun meine Funktion: > > > function Status(int Number,int Mode,long offset, > long on,long off,long onTime) returns int > { > ..... > ontime=5; > } > > > nun der Aufruf der Funktion aus dem Programm: > > > long time; > .... > check.Status(1,1,30,2100,2200, time) > > hwcom.num(time); > ... > > > wo ist mein Gedankenfehler? > > Danke und Gru�, > ChristianS Hallo Christian, dein Denkfehler liegt beim Rückgabewert... Die Funktion SASU gibt eigentlich nichts zurück - was gemacht wird ist folgendes: Es wird ein Array definiert, das die Werte für den Sonnen Auf/Untergangszeiten enthält. Der Funktion wird der Name dieses Array mitgegeben. Die Funktion berechnet etwas und schreibt den Wert in das Array - es manipuliert also die Variablen innerhalb der Funktion. Das "leere" return gibt nichts zurück... Darum schreibst du ja auch nicht zeit[] = Sasu(...) sondern du rufst die Funktion nur auf... sasu(.....,zeit) ich hoffe ich habe dich richtig verstanden... nitraM | ||
Antwort schreiben Antworten: |