brauche wieder eure Hilfe.
Meine Methode soll alle Eingaben meiner Shell speichern und das ganze soll mit malloc und realloc realisiert werden.
Code: Alles auswählen
#define BUF 255
size_t len;
char *str_hist = NULL;
char input[BUF];
void eingabe_einlesen() {
int x =0;
fgets(input,BUF,stdin);
str_hist=malloc(strlen(input)+1);
if (NULL==str_hist) {
printf("KEIN SPEICHER");
return EXIT_FAILURE;
}
strcpy(str_hist, input);
len=strlen(str_hist);
str_hist=realloc(str_hist,strlen(input)+len+1);
if(NULL == str_hist) {
printf("Kein virtueller RAM mehr vorhanden ... !");
return EXIT_FAILURE;
}
strcat(str_hist, input);
.
.
.
Code: Alles auswählen
void schliessen() {
printf("SCHLIESSEN %s",str_hist); // Hier sollen eigentlich alle Eingabe ausgegeben werden
free(str_hist);
exit(1);
}
es soll aber alle Eingaben ausgeben.Spaeter soll das ganze in einer Datei gespeichert werden, wobe jedem Eintrag eine ID (0,1,2,...) vorangestellt werden soll.
LG miskin