Buenas a todos,
me preguntaba como se podría escribir en el stdout de tal manera que puediera sobreescribir una linea que ya he escrito anteriormente. Por ejemplo:
printf("Hola\n");
prinft("Caracola");
// La salida seria:
// Hola
// Caracola
Y tras esta sallida me gustaría modificar el "Hola" de la linea de arriba. Sé que haciendo esto se puede modificar una linea:
printf("Holacaracola\radios\n");
// La salida seria:
// adiosaracola
... pero es la misma linea, no la linea anterior. Todo esto viene por que me pregunto como lo harán comandos como "top" en linux, que no se si lo hacen así o de otra manera.
Un saludo, ¡y gracias!
Con solo C estándar no es posible. En el caso de Linux puedes utilizar una biblioteca como ncurses, un tutorial sobre esta es NCURSES Programming HOWTO (http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/) y ejemplos sobre el tema que comentas se encuentran en el capitulo 6: Output functions (http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/printw.html).
Un saludo