ganz komischer "conflicting types for xyz" fehler.
-
Hallo zusammen!
Ich habe ein Problem mit einer/mehreren Funktionen.
Mein Programm besteht aus 5 Funktionen.
Die 1. beiden funktionieren wunderbar. Wenn ich jetzt die 3. dazu nehme dann kommt immer ein fehler. Hier ein auszug für eine funktion samt ihren aufruf://AUFRUF: case 3: printf("Bitte geben sie die Kontonummer von dem Konto an, auf welches sie einzahlen möchten:"); scanf("%i",&tempCountKonten); printf("Wieviel möchten sie auf das Konto mit der Nummer: %i einzahlen?:",tempCountKonten); scanf("%f",&einzahlBetrag); neuerKontostand=einzahlung(kontostand,tempCountKonten,einzahlBetrag); printf("Der neue Kontostand beträgt: %f",neuerKontostand); break; //FUNKTION: double einzahlung(double kontostand[], int tempCountKonten, double einzahlBetrag){ double x=0; kontostand[tempCountKonten]=kontostand[tempCountKonten]+einzahlBetrag; x=kontostand[tempCountKonten]; return x; }
der Fehler der immer auftritt heisst wie folgt:
conflicting types for 'einzahlung'
previous implicit declaration of 'einzahlung' was herealle variablen sind richtig deklariert es ist total komisch.
mfg
MongoDongo
-
Fehler behoben!!!
Habe die ganzen FUnktionen über die MAIN geschoben dann war das problem weg
Kann mir jemand sagen warum 2 FUnktionen unter der main funktionieren und sobald man eine neue z.b. 3 die dritte dazu nimmt dann ein fehler kommt?
Habe nun alle 5 funktionen üner main und es gehzt!mfg
MongoDongo
-
Such mal nach Funktionsdeklaration und Funktionsdefinition.
-
MongoDongo schrieb:
Fehler behoben!!!
-
MongoDongo schrieb:
Kann mir jemand sagen warum 2 FUnktionen unter der main funktionieren und sobald man eine neue z.b. 3 die dritte dazu nimmt dann ein fehler kommt?
Wenn du eine Funktion verwendest, bevor sie deklariert wurde, bekommt sie eine implizite Deklaration als 'int func();' (Rückgabetyp int, beliebige Parameter). Wenn du dann etwas anderes als int in der Definition angibst (in deinem Fall ein double), beschwert sich der Compiler zu recht.