Phi!
Może tego sporo, ale powinno działać na systemach:
-Windows
-Linux
-Unix
-Android
-Mac
-iOS
#ifdef __ANDROID_API__
#include <sys/ioctl.h>
#include <unistd.h>
#include <stdio.h>
#elif !defined(__APPLE__) || (TARGET_OS_IPHONE) || (TARGET_IPHONE_SIMULATOR)
#include <stdlib.h>
#elif __APPLE__
#include <unistd.h>
#include <term.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");
#elif defined __APPLE__
#ifdef (TARGET_OS_IPHONE) || (TARGET_IPHONE_SIMULATOR)
int i = -1;
for(;i<70; ++i) puts("");
#else
if(!cur_term){
int result;
setupterm( NULL, STDOUT_FILENO, &result );
if(result <= 0) return;
}
putp(tigetstr("clear"));
#endif
#else
system("clear");
#endif
}
/* ... */
ClearScreen();
( bez ios: https://ideone.com/lEe74R )
Dla sprostowania:
w androidowym oraz ios'owym terminalu (raczej) nie będzie paska przewijania, więc oszusto polegające na skoczeniu w dół nie powinno zostać zauważone.