deepthroat
Erfahrenes Mitglied
Dann brauchst du aber keine Abfrage, denn dann ist dein Speicher immer zu klein. Du mußt aber den Speicher summieren. Und warum allozierst du dann gleich am Anfang 10 Zeichen, wenn du doch keinen Speicher verschwenden sollst?Es ist ein beliebig langer Text in einem txt-File gelesen. Haben ein Testfile bekommen, aber das hat keine 300 Zeichen. Außerdem ist es verlangt, jedes Mal den Speicher neu zu allozieren, damit kein Speicher verschwendet wird.
C:
size_t memsize = 0;
char* input = NULL;
while (...) {
memsize += zusaetzliche_groesse;
input = realloc(input, memsize * sizeof(*input));
}
free (input);
PS: Und es ist nicht notwendig jedesmal 1 Zeichen mehr zu allozieren als benötigt wird.