Ok, here is my 2 part question.

How do i set cout (preferably) to overwrite previous text. eg:
Code:
std::cout << "i like bob" << std::endl;
std::cout << "i hate";
i want to print out: "i hate bob\n". Each line overwriting previous console text.

Second Part: Non-Blocking-Input.
If that title makes no sense, dont worry, i made it up because i couldnt think of a better name for it. I want to get a keypress, IF there is a keypress, and NOT halt the program to wait for one. If there is a better term for this please let me know. Would a local keyhook do this for me? If there is an easier not-so-platform-specific way to get this style of input, please tell me all you know.

As always, thanks for your time.