2012-01-18 3 views
5

좋아, 그래서 콘솔 응용 프로그램이 여러 줄을 덮어 쓰는 리눅스 용 top(1)과 같은 콘솔 궁금한 것이 었습니다. C++이나 C에서 어떻게 처리하는지 알고 싶습니다. \ r을 놔서 한 줄을 덮어 쓰는 방법을 알고 있지만, 여러 줄을 위해 그렇게하는 법을 알고 싶었습니다.위로 콘솔 덮어 쓰기

+2

플랫폼에 따라 다릅니다. 어느 플랫폼에 있습니까? – Jon

+0

리눅스는 아마도 내가이 일을하고 싶어하는 곳일 것이다. – csteifel

답변

3

터미널 이스케이프 시퀀스를 사용하여 화면에서 커서를 이동합니다. 일부는 심지어 직접 프레임 버퍼 접근을 사용하여 화면을 직접 색인화 할 수있는 문자 배열로 취급합니다.

curses (또는 ncurses) 라이브러리는 좋은 추상화 계층입니다.

+0

단지 참고이지만, curses는 실제로 Windows에 존재하지 않는다 : [Windows 용 ncurses가 가능하다] (http://stackoverflow.com/q/138153/) 16487) –

+0

@ C.Ross : curses API를 지원하는 대체 터미널 에뮬레이터에 대한 질문입니다. 'curses'는 확실히 콘솔 모드 응용 프로그램에서 사용할 수 있습니다. –

+0

pdcurses는 실제로 매우 유용합니다. Windows에서 pdcurses에 기본 ASCII 문자를 사용하여 ncurses 응용 프로그램을 포팅하는 데 문제가 없었습니다. ncurses와 ncurses의 UTF-8 호환 화신을 사용한다면 아마도 더 많은 문제가 발생할 것입니다. –

2

이 질문은 직접적으로 다루지는 않겠지 만, 이런 종류의 것은 터미널에 의존하며 curses 구현 (일반적으로 ncurses이 가장 널리 사용됩니다)으로 수행됩니다.