I have written a program that gets user input with getline(), and then prints some information to the terminal with several std::cout's, with some delay in-between pieces of data. However, if the user types while the output is being printed to the screen, whatever they type will appear, spliced into the output in a very ugly way. (I don't think that the getline() actually has anything to do with this problem, but I thought I'd mention it just in case it does.)
Is there some way to stop user input from being written to the screen, while still using the terminal (I don't want to write a GUI)?