Problem mit malloc
-
Guten Tag die Damen und Herren ^^
Also mein Programm soll folgendes machen:
2 Datein einlesen (Inhalt Buchstaben ungeordnet, getrennt durch Zeilenumbruch)
Speicher allokieren
Sortieren
und in eine 3 Datei die sortierten Buchstaben wieder ausgebenund das folgende Problem ist, dass ich einfach nicht draufkomme wie ich das mit der Allokierung hinbekommen soll!
#include <stdio.h> #include <string.h> #include <stdlib.h> int main(void) { FILE *fpA, *fpB, *fpC; char zeile[80]; // Definiere die Anzahl der Zeilen fpA = fopen("dat1.txt","r"); //öffnen der Datei 1 fpB = fopen("dat2.txt","r"); //öffnen der Datei 2 fpC = fopen("dat3.txt","w"); //öffnen der Datei 3 if (fpA == NULL || fpB == NULL || fpC == NULL) { printf("Fehler beim oeffnen der Dateien!\n"); } else { int i; char satzA[i]; char satzB[i]; } getchar(); return 0; }
-
Also mit fseek(fpA, 0, SEEK_END); den Dateizeiger ans Dateiende setzen und dann char* buf = malloc(ftell(fpA)); Speicher für den Buffer holen
und den Dateizeiger zurück auf den Dateianfang fseek(fpA, 0, SEEK_SET); alles klar?