UNIXベースのシステムで画面をきれいにする方法について教えてください。ネットで検索してみましたが、Windowsでのやり方はsystem("CLS")で見つけました。 画面全体をきれいにしたいわけではなく、NANOやVIエディタのように、新しいページを開きたいのです。ありがとうございます。
以下のコードで、termcapを使用して画面をクリアすることができます。 (ライブラリとリンクすることを忘れないでください)
#include <stdio.h>
#include <stdlib.h>
#include <termcap.h>
void clear_screen()
{
char buf[1024];
char *str;
tgetent(buf, getenv("TERM"));
str = tgetstr("cl", NULL);
fputs(str, stdout);
}
通常、画面をクリアすればいいというものではなく、端末を意識したアプリケーションにすることが必要です。
ncurses]1 ライブラリを使用し、NCURSES プログラミング HowTo を読む必要があります。
(David RFが回答したように、ANSI escape codesを使うこともできるかもしれませんが、私は良いアイデアだとは思いません)