2013-02-18 3 views
1

이 샘플 프로그램이 있습니다. 화면 및 스크롤 백 버퍼를 지 웁니다. 화면 및 버퍼 지우기

#include <stdio.h> 
int 
main(void) 
{ 
    printf("\ec"); 
    return 0; 
} 

그러나 나는

가 모든 단말기가 ANSI/VT100을 + 이스케이프 시퀀스를 읽었습니다.

그래서 나는 Gilles suggestserase(); 같은 것을 사용하고자하고있다. 그러나 erase과 친구들은 화면을 지우고 버퍼를 지우지 않는 것처럼 보입니다.

+0

scollback 버퍼를 지우는 것은 약간 사용자에게 적대적입니다. 그렇지 않습니까? 왜 앱이 작성하지 않았을 수도있는 것을 정리해야합니까? – Jens

답변

2

Windows를 사용하는 경우이

#include <stdio.h> 

int main(void) 
{ 
    system("cls"); //call to system function to clear screen. 
    return 0; 
} 

This thread 사용하여 다음과 같은 제안이 있습니다 : 다음에 반환, 스크롤 백 삭제할 0으로 스크롤 백 설정 창에서

을 그 정상 값 (귀하의 경우, 15000). 당신이 원하는 경우

, 당신은 키에이 바인딩 할 수 있습니다 :

bind/eval "scrollback 0" "scrollback 15000" 

당신은 C-a :를 입력 한 후,뿐만 아니라 세션에서 scrollback 0 명령을 실행할 수 있습니다. HTH.

1

C에는 화면 또는 스크롤 버퍼의 개념이 없으므로 C 만 사용하여이 문제를 해결할 수 없습니다. 당신의 시스템은 원하는 효과를 얻을 수있는 방법을 제공 할 수 있습니다. 프로그램을 더 이상 C 프로그램이 아닌 ""으로 작성된 프로그램 Frobniz 컴파일러를 사용하여 Frobozz Magic V1.42에서 발견 된 C 구현과 CleanScreen 라이브러리 툴킷 ". 비 휴대 프로그래밍의 악몽에서 벗어나 아이디어를 잊어 버려라. 알고리즘을 C와 같이 구현하고 화면 지우기와 같이 쓸모없는 크롬을 잊어 버리는 등의 문제를 해결하는 것이 좋습니다. (정말로 필요한 경우, termcap 라이브러리와 링크하고 적절한 함수를 호출하십시오).