too few arguments to function... wie behebe ich das?
-
beim prototypen schreibt er mir den error...too few arguments....
und wo ichdas unterprogramm im hauptpr. aufrufe schreibt er dann at this point..
....HILFE!!!!!!!!!!!!!!!!
-
lies mal noch mal in deinem grundlagenbuch nach - am besten, du fängst relativ weit vorne an...
stichwort wäre hier wohl: Funktionen (ab und an auch Unterprogramme genannt).
Deine Funktion erwartet nun mal einen Parameter - sonst weiß sie nicht, was sie machen soll... du bekommst ja auch kein leeres Blatt in ner Klausur vorgelegt und es heißt: Lösen Sie die Aufgaben...bb
edit: noch dazu ist
int
was ganz anderes alsint[]
.Um qualifizierte Antworten zu bekommen, musst du nicht nur mehr rumspammen sondern auch deine Shift-Taste mehr benutzen und mehr Ausrufezeichen schreiben - nen paar mal mehr Hilfe schreiben wäre auch gut - sonst denken hier alle, dass dir die Lösung gar nicht wichtig ist...
-
Drück dich vernünftig aus. Ein Ausrufezeichen reicht, und Caps Lock ist auch nicht nötig. Sonst nimmt dich hier niemand ernst.
Dein Problem besteht darin, dass du die Funktion
Spielfeld_erzeugen()
ohne Argumente aufrufst, obwohl ihre Deklaration einenint
-Parameter besitzt. Im Weiteren stimmt die Definition auch nicht, da hast du nämlichint*
.
-
Gabri schrieb:
beim prototypen schreibt er mir den error...too few arguments....
Was logisch ist, vergleiche mal den Prototyp mit der Funktion, und schau dir auch deinen Funktionsaufruf an.
Prototyp: Spielfeld_erzeugen(int)
Aufruf: Spielfeld_erzeugen()
Funktionskopf: void Spielfeld_erzeugen(int[])Dies sind drei Komplett unterschiedliche Signaturen. Der Prototyp besagt das die Funktion einen Parameter vom Typ int erwartet. Der Funktionsaufruf gibt - obwohl gefordert - keinen Parameter mit. Und der Funktionskopf verlangt keinen int, sondern ein int-Array.
Falls ein Compiler dies überhaupt durchlässt (und das Programm startet), ist er entweder falsch eingestellt (Bei einem Fehler sollte das Programm nicht compilieren), oder schlicht schlecht.
Gabri schrieb:
...
Zudem ist deine Tastatur scheinbar kaputt, deine "."- und "!"-Taste scheint massiv zu klemmen.
-
Ich hab jez
Prototyp: void Spielfeld_erzeugen(int Meer[]);
Aufruf: Spielfeld_erzeugen(int Meer); // hier schreibt er mir "expected primary expression before "int" "
Unterprogramm: void Spielfeld_erzeugen(int Meer[])
-
Hi Gabri,
English: error...too few arguments
Deutsch: Fehler... zu wenig ArgumenteDeklariation: void Spielfeld_erzeugen(int);
Definition demnach auch: void Spielfeld_erzeugen(int) { ...code... }
Aufurf im Programm demnach: Spielfeld_erzeugen(<int_wert>);
-
Ich finde jeder sollte jez haben.
-
# include <iostream>
using namespace std;
void Spielfeld_erzeugen(int Meer[]);
int main()
{int Meer[7];Spielfeld_erzeugen(Meer);
}
void Spielfeld_erzeugen(int Meer[])
{...hab schon danke
echt gutes forum danke nochmals
cao
-
Na wenn da mal nicht ein Stern am Programmiererhimmel aufgeht...
-
Gabri schrieb:
Ich hab jez
...Beim Aufruf hast du ein Int-Array zu übergeben (nach der Signatur), und keine Variablendeklaration zu machen. Und wenn du mit diesen Begriffen nichts anfangen kann bleibt wirklich nur eines: Wie wäre es wenn du dir ein C++ Buch käufst, und ganz vorne anfangst zu lesen (Dir fehlen wirklich jegliche Grundlagen, oder zumindests das Verständnis derselben).