credo di risolvere in questo modo: tratto tutti i token come se fossero stringhe, quindi senza nessun tipo di conversione... dichiaro nella stack struct un vettore di caratteri preposto a contenere sia cifre che variabili, anzichè utilizzare un semplice dato char. a questo punto posso scambiare qualsiasi cosa perchè non ho più problemi di lunghezze o trasformazioni...

a dire il vero avevo pensato anche a una soluzione del tuo tipo, ma mi dava l'impressione di "barare", non mi sembra che sia una cosa pulita al 100%...

grazie e vi farò sapere... se avete idee migliori non esitate a postare!