![]() |
[C] Hilfe bei Projekt
Hallo erstmal!
Ich muss ein Kontoprogramm erstellen, dies hab ich auch soweit geschafft, aber da ich mehr und mehr auf Fehler gestoßen bin und rumgebastelt habe, hab ich mir den Code ziemlich versaut... Ich komme einfach nicht weiter, da ich nicht weiß wie ich die Fehler behebe. Wäre nett wenn mir Jemand helfen könnte main.c Code:
#include <stdio.h> Code:
#include <stdio.h> |
Guck dir die Fehlermeldungen deines Compilers an und arbeite sie Schritt für Schritt durch.
|
das ist das Problem, ich kann mit den Fehlermeldungen nichts anfangen...
|
Kannst du kein Englisch?
|
Die lokale Deklaration von "konten" blendet die frühere Deklaration in Zeile "13" von konto.h" aus.
main.c zeile 8 Der Rückgabewert wird ignoriert: "scanf" zeile 71 Der 2-Parameter im Aufruf von "scanf" muss die Adresse der Zeichenfolge sein. zeile 71 wie gesagt, das Problem ist, dass ich einges "verbaut" habe... Zitat:
C ist das Problem, nutze Visual Studio (Deutsch) Hab den Code nochmal überarbeitet: Code:
#include <stdio.h> Code:
struct konto in die Datei wird es aber geschrieben, nur der Kontostand ist 0.00 bekomme außerdem diesen Compilerfehler: Nicht initialisierter Speicher "kontoID" wird verwendet.: Lines: 8, 9, 10, 11, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 29, 31, 32 und Die möglicherweise nicht initialisierte lokale Variable "kontoID" wurde verwendet. |
Also zuerst einmal hast du deine Variablen nicht initialisiert.
Zitat:
Zitat:
Zitat:
Außerdem nutzt du die Funktion scanf. Von der Nutzung dieser Funktion rate ich immer ab. Scanf schaut nicht ob das was du eingibst überhaupt da rein passt wo du es eingeben willst. Heißt also dass du etwas eingibst und wenn es zu groß ist wird es im Puffer gespeichert. Wenn das nächste Scanf kommt wird automatisch das was im Puffer steht da rein geschrieben. Noch dümmer ist das wenn du eine einzige Zahl eingibst z.b 3 und dann Enter drückst, wird das Enter im Puffer gespeichert und dein nächstes scanf bleibt einfach leer. Anfänger die trozdem mit scanf arbeiten wollen (Was ich nicht verübeln kann weil die Funktion sehr einfach zu nutzen ist) müssen nach jedem scanf ein fflush(stdin); einfügen damit der Tastaturpuffer geleert wird. Zu scanf gerne auch hier lesen [Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] . Besonders der Abschnitt über Probleme erklärt das nochmal sehr gut. |
Also deine Punke habe ich umgesetzt, aber wie löse ich das Problem mit dem Rückgabewert von scanf?
Und wieso hab ich keinen Zugriff auf das erstellte Konto? edit: Jetzt passt soweit alles, nur möchte ich, dass ich zu Beginn des Programms auf den Inhalt der Datei zugreifen und ihn verwenden kann. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:41 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.