>>>>> On Fri, 23 Feb 2001 19:59:28 +0100, Daniele Nicolodi <daniele@xxxxxxxxxx> >>>>> said: DN> On Fri, Feb 23, 2001 at 09:13:54AM +0100, Lele Gaifax wrote: >> Quel `\r' riporta il cursore all'inizio della riga, quindi la >> volta dopo stamperà sopra l'ultima... DN> Grazie. Ma se non volessi ristampare tutta la riga ??? Chiedo DN> troppo ? Be', la faccenda si complica un attimino: o fai il semplice e ti limiti a riscrivere gli ultimi quattro caratteri, tipo void print_progress (const char *msg) { /* Parti da 0% */ printf ("%s: %3d%%", msg, 0); } #define BACKSPACE 7 void update_progress (int perc) { printf ("%c%c%c%c%3d%%", BACKSPACE, BACKSPACE, BACKSPACE, BACKSPACE, perc); } void end_progress (const char *msg) { printf (" %s.\n", msg); } Per cose più complicate, necessiti di indirizzamento del cursore, e qui entra in ballo la libreria curses/terminfo. Con quella ad esempio hai i vari comandi per spostare il cursore a volontà... ciao, lele. -- nickname: Lele Gaifax | Quando vivro' di quello che ho pensato ieri real: Emanuele Gaifas | comincero' ad aver paura di chi mi copia. email: lele@xxxxxxxxxx | -- Fortunato Depero, 1929. -- Per iscriversi (o disiscriversi), basta spedire un messaggio con SOGGETTO "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxxxxxx