-
-
Erfahrener Benutzer
Roboter Experte
Okay, jetzt weiß ich was du möchtest.
int feld [256]; bedeutet:
feld[0] ist ein integer, feld [1] ...feld[255] alles integer
feld ohne jeden index ist ein Zeiger auf einen Integer. Genauer gesagt ist es der Zeiger auf feld[0], okay?
int mysort(int feld[256])
mysort gibt per Deklaration einen Integer zurück.
return feld;
feld ist aber ein Zeiger. Das geht so nicht.
Was du wirklich vor hast, wird hier klar.
b=mysort(b);
Du möchtest das b innerhalb der Funktion manipuliert wird, sonst nix. Warum übergibst du erst b und schreibst es dann zurück. Besser ist es, der Funktion mitzuteilen wo sie auf b zugreifen kann. Das machst du mittels eines Zeigers.
void mysort (int*);
Bei dieser Deklaration gibt es keinen Rückgabewert. Dh. du schließt sie nur mit return; ab und sie erwartet einen Zeiger als der auf einen Integer verwist als Argument.
void mysort (int* pFeld){
pFeld[0] = 1;
pFeld[1] = 2;
}
So greifst du dann auf die Felder zu.
Gruß
Jens
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen