Is is possible that you rewrite the last line of the console?
What do you mean by 'rewrite'? Do you mean to delete it and write something different over it or just print out the same thing again on a different line?
Well, the console was really only made to output logging information, not to make fancy CUIs. If you want to make a CUI, then you will have to go with ncurses. As for endwin() removing the text, you'll probably have to pause the program there (by getting input or something).
I stand corrected, but it is still not portable. I could create an OS that does nothing when you use \r but does both a newline/carriage return when you use a \n.
Actually, cout would basically be a no-op in that case. Generally you shouldn't be using cout in serious programs anyway because someone could have redirected it to an error stream or a debug file.
I'm with RyanCaywood. With that reasoning, you could create an OS that prints "No memory for you!" to the screen whenever someone calls malloc() and then returns a null pointer. Would you say that calling malloc isn't portable?