009
28.10.2008, 09:10 Uhr
Thomas_C
|
Also, so richtig weitergebracht hat mich das noch nicht. Die Funktionsweise der einzelnen Funktionen sind nicht mein Problem. Mein Problem sind die Variablen. Ich häng mal folgenden Code an und schreibe mal dazu, was ich Aufgrund von meinem Problem erwartet hätte:
C++: |
#include <stdio.h>
int test1(int, int); void copy(int longest, int line);
main() { int testa; int testb; int longest; int line; testa=3; testb=4; longest=5; line=7; printf("Test1 ist die Berechnung aus 3*4: %d\n\n",test1(testa,testb)); copy(longest, line); printf("Mal sehen: %d\n\n", longest); }
int test1(int a,int b) { int resulta; resulta=a*b; return resulta; }
void copy(int to, int from) { to=to*from; printf("In COPY ergibt die Berechnung: %d\n\n",to); }
|
Ich habe extra eine Funktion mit dem Namen Copy und den Variablen longest und line gewählt, damit hier eine Ähnlichkeit zu dem ersten Code besteht. Ich übergeb hier doch genauso wie im ersten Code die Variablen longest und line an die Funktion Copy. In Copy werden die Variablen an to(entspricht longest) und from(entspricht line) übergeben. Der Wert für to wird neu berechnet. Das Ergebnis wird als Kontrolle zuächst mir printf ausgegeben, alles oK.
In Main ist jetzt aber noch ein printf mit der Variablen longest, ähnlich wie in dem ersten Code, hier steht aber dann immernoch die 5 und nicht die 35 von der Variablen to aus der Funktion copy.
Ich hoffe, dass jemand mein Problem nachvollziehen kann. Wie gesagt, ich weiss nicht wo ich verloren gegangen bin, aber eure Hilfe ist wichtig für mich.
Vielen Dank.
Ich weiß cih steh auf dem Shclauch, kann aber leider nicht hochspringen |