La cosa è dipendente dal SO e/o dal compilatore. Su linux dai un'occhiata a ncurses, su windows cerca getch()