Speichern funktioniert nicht
-
Bei mir funktioniert das Speichern eines Structs nicht:
AnsiString Filename; SaveDialog1 -> FileName = Filename; SaveDialog1 -> InitialDir = ExtractFilePath(Filename); if(SaveDialog1 -> Execute()) { FILE *datei = fopen("(SaveDialog1 -> FileName)", "a+"); fwrite(&frauen, sizeof(frauen), 1, datei); fwrite(&manner, sizeof(manner), 1, datei); fclose(datei); }
Danke schonmal im vorraus!
-
Vielleicht wäre es auch ganz spannend weid die Struktur aussieht, meinst du nicht?
-junix
-
Ja, sorry, die Struktur sieht folgendermaßen aus:
struct spieler{ int spl1; int spl2; int spl3; float durch; }frauen[5],manner[6];
-
bringt der Compiler denn eine Fehlermeldung? Oder tut er einfach nichts?
möglicherweise liegts an der Zuweisung mit dateiFILE *datei = fopen("(SaveDialog1 -> FileName)", "a+");
laut Hilfe zu fopen scheint es so gehen zu müssen:
FILE *datei; datei = fopen("(SaveDialog1 -> FileName)", "a+");
wo mir grad so auffällt, dass du hier höchst wahrscheinlich auch im falschen Forum bist (o:
-
Hi
dir ist doch lar, dass du versuchst in eine Datei zu speichern, die:
"(SaveDialog1 -> FileName)"
heißt. Das ist, soweit ich weiss kein gültiger Dateiname, weshalb er dort auch nichts speichert.
-
Also während des Programms kommt beim Speichern, eine Zugriffsverletztung bei Adresse ..... in Modul cp3240mt.dll.
-
wieso &frauen?
'frauen[0]' ist das erste element deines arrays 'frauen' ist das selbe wie
'&frauen[0]' aber '&frauen' ist '&&frauen[0]'das gibt ganz sicher eine Zugriffsverletzung
-
Hi nochmal,
in derC++- FAQ steht ein beispiel. Nimm das doch. Sonst benutzt die Suchfunktion.
Es gab hier schon zig Beispiele...
-
DAnke an alle, die mir geholfen haben, die Lösung war ganz einfach:
SaveDialog1 -> Filename.c_str()
-
jep, das hab ich ja angedeutet...