Devo fare un piccolo programma capace di risolvere espressioni in notazione polacca inversa.
L'espressione va scritta su un'unica riga e dopo aver digitato invio bisogna calcolarne il risultato.
Il problema è che secondo le specifiche la lunghezza dell'espressione può arrivare a 1048576 bytes...
Ora mi chiedo: come faccio a memorizzare l'intera riga di input? L'unica cosa che mi è venuta in mente è:
char stringa[1048576];
scanf("%s", stringa);
Però allocare lo spazio per un vettore da un mega e poi usare magari solo 10 bytes mi sembra uno spreco, e poi non mi sembra molto pulita la cosa.
Suggerimenti?
Grazie in anticipo