Czyszczenie konsoli

spartanPAGE

Ponieważ często występuje (głównie lub pobocznie) temat czyszczenia ekranu konsoli przy tekstowych grach -
umieszczam napisany wcześniej kod w języku C

Działa on na systemach:

  • Windows
  • Unix(owych)
  • Android
#include <stdlib.h>
#include <stdio.h>

#ifdef __ANDROID_API__
    #include <sys/ioctl.h>
    #include <unistd.h>
#endif
 
void ClearScreen(){
#ifdef __ANROID_API__
    struct winsize w;
    ioctl(STDOUT_FILENO, TIOCGWINSZ, &w);
    int i = -1;
    for(;i<w.ws_row;++i) puts("");
#elif defined WIN32
    system("cls");
#else
	printf("\\033[2J\\033[H");
#endif
}

powinienem się jeszcze rozpisać?

2 komentarzy

dla linucha zadziała też system("clear")

Dla Uniksowych/Linuksowych/kompatybilnych terminali powinny działać sekwencje sterujące ANSI. Wystarczy wypisać "\033[2J\033[H". 2J czyści ekran a H przenosi kursor do początkowej pozycji.