2012-02-09 3 views
2

시스템 ("지우기")을 사용하지 않고 Mac에서 C++의 화면을 지우는 방법입니까? 명령? 캐릭터를 대신 할 방법이 없다면?C++에서 화면 지우기

+0

"화면"이란 말은 터미널 (에뮬레이터)을 의미합니까? – pmr

+0

http://rlv.zcache.com/there_their_and_theyre_tshirt-p235250795253403358z8nr2_400.jpg –

+0

그래 당신은 뉴 라인의 무리를 작성할 수 있으며, 그 화면 –

답변

7

이식성을 전혀 신경 쓰지 않는다면 clear과 동일한 일련의 문자를 내 보내면됩니다.

$ clear | od -c 
0000000 033 [ H 033 [ 2 J 
0000007 
$ : "Oh, it is ESCAPE [ H ESCAPE [ 2 J on my computer" 
$ cat clear_fun.cc 
#include <iostream> 
void clear() { std::cout << "\033[H\033[2J" << std::flush; } 
$ 
+1

어리석은 질문, 굉장한 대답의 또 다른 경우 –

+3

o 나는 당신이 결코 새롭지 않았고 이런 질문을 한 적이 없다는 것을 알게되어 유감스럽게 생각합니다. 그래서 배울 수있는 초보자에게 가슴을 시들게합니다. –

+1

이것은 바보 같은 질문이 아닙니다. @ bovjac : 당신은 일부 SO 멤버들로부터 그러한 코멘트에 직면하게 될 것입니다. 그러나 어리석은 질문 같은 것은 없습니다. 어떤 질문을하든, "잘 붙이세요". +1 질문. –

2

표준 C++은 "화면"또는 무엇인가에 대해 말하지 않습니다. 유닉스에서는 ncurses를 사용할 수 있습니다. 일반적으로 이것은 단지 터미널 제어 코드를 사용합니다. 대부분 VT100이 터미널이라고 가정 할 수 있으며 다양한 제어 코드를 사용할 수 있습니다. Windows 터미널에서이 작업을 수행하는 방법을 모릅니다.

+0

http://en.wikipedia.org/wiki/ANSI_escape_code#Windows_and_DOS "모든 버전의 Windows에서 콘솔 창은 ANSI 이스케이프 시퀀스를 전혀 지원하지 않습니다." Windows에는 어딘가에 이런 종류의 특별한 명령이 있습니다. –