2009-08-16 2 views
1

Windows 메시지 나 std :: cin 스트림을 사용하지 않고 콘솔에서 마지막 키를 누르는 방법이 있습니까? 표준 라이브러리에 함수가 있다고 들었습니다. 해결책은 가능하면 휴대가 가능한 것이 바람직합니다. 사전에 도움을 주셔서 감사합니다.Windows 메시지가없는 콘솔에서 키 누르기 C++

+1

마지막 * 문자 * 또는 마지막 * 키 누르기 (예 : 시프트, 컨트롤 및 화살표 키와 같은 수정 자 포함)에 관심이 있으십니까? 그것이 keypresses 인 경우에 당신은 쉬운 휴대 가능성에 관해서는 매우 다행이다. –

답변

1

conio.h이 있지만 기술적으로 표준이 아닙니다. 리눅스에서, 나의 첫 번째 구글 히트는 termios.h을 제안한다.

0

휴대용은 아니지만 Windows의 콘솔 앱에서도 GetAsyncKeyState를 사용하여 현재 키 상태에 액세스 할 수 있습니다. 더 많은 기술적 인 그리고 똑같이 특정 윈도우는 SetWindowsHookEx를 사용하여 키보드를 마지막으로 누른 키를 저장하는 시스템 콜백에 연결하는 것입니다.

기본 문제 : Console + Portability - cin을 암시하는 것처럼 보이는 것이 최선의 방법입니다 - cin이 제공하지 않아야 할 것은 무엇입니까?

0

pdcurses와 같은 저주 라이브러리를 사용 해본 적이 있습니까? 내가 아는 콘솔 관리를 할 수있는 유일한 크로스 플랫폼 라이브러리에 관한 것입니다.