Clear Screen using C++

后端 未结 4 1652
小蘑菇
小蘑菇 2020-12-08 05:27

I would like to clear the CMD screen I have seen a few options first is

system(\'clr\');  

but dont want to use system cause then it makes

相关标签:
4条回答
  • 2020-12-08 06:14

    If you want a solution that will work on Windows, Mac & Linux/UNIX, you will need to come up with your own implementation. I do not believe that there is a single way to do it that works on all platforms.

    For Mac/Linux/UNIX/BSD/etc., ncurses provides an easy way to do this (http://www.gnu.org/software/ncurses/).

    For Windows, you will probably want to look into conio.h (http://en.wikipedia.org/wiki/Conio.h) or PDCurses (http://pdcurses.sourceforge.net/) or something similar. Alternatively, it would seem that you can do this without any third-party libraries, according to this Microsoft KB article: http://support.microsoft.com/kb/99261.

    There is unfortunately no standard C/C++ function to do this. You should be able to write a small function which will build & work on any platform using the different methods I mentioned and some preprocessor directives.

    If you don't have a convenient way to detect the platform, I would probably recommend cmake.

    0 讨论(0)
  • 2020-12-08 06:15

    In UNIX try

    system("clear")
    

    clrscr() may not work in UNIX because some compilers do not support conio.h

    0 讨论(0)
  • 2020-12-08 06:28

    Try this: it works both on Linux and Windows.

    cout << "\033[2J\033[1;1H";
    

    This is a string of special characters that translate to clear the screen command.

    You can enclose this in a function like e.g. clrscr() depending on your implementation.

    0 讨论(0)
  • 2020-12-08 06:29

    Another way would be to use OpenGL, Qt or SDL, which are cross-platform and write a graphical console. This can be seen in many roguelike games, for example Dwarf Fortress.

    0 讨论(0)
提交回复
热议问题