Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Как очищать экран в С++?


Автор: focus_198411 20.12.2007, 19:03
Скажите, какая есть аналогичная функция в С++, функции clrscr() в С? smile 

Автор: DigitSphinx 20.12.2007, 19:20
Код

#include "cstdlib"
......
system("cls");

не лучшее, но решение !

Автор: papam 20.12.2007, 19:50
Эта программа использует метод clear_screen  для очистки экрана дисплея:
Код



    #include <iostream.h>

    class menu

    {
    public:
       static void clear_screen(void);
       // Здесь должны быть другие методы
    private:
       int number_of_menu_options;
    };

    void menu::clear_screen(void)

    {
       cout << '' << "[2J";
    }

    void main(void)

    {
       menu::clear_screen();
    }


Автор: DigitSphinx 20.12.2007, 22:10
Цитата(papam @  20.12.2007,  19:50 Найти цитируемый пост)
Эта программа использует метод clear_screen  для очистки экрана дисплея:

 smile

Добавлено через 23 секунды
как где когда ?

Автор: papam 20.12.2007, 22:45
CLEAR_SCREEN () -  Очищает  экран

Код

 menu::clear_screen();


Автор: Mayk 21.12.2007, 09:15
стандартной нет.

Автор: DigitSphinx 21.12.2007, 13:03
Цитата(papam @  20.12.2007,  22:45 Найти цитируемый пост)
CLEAR_SCREEN () -  Очищает  экран

ничего она не очищает !  smile 

Автор: Mayk 21.12.2007, 13:16
Цитата(DigitSphinx @  21.12.2007,  17:03 Найти цитируемый пост)

ничего она не очищает ! 

it depends..  ESC[2J суть очистка экрана в ANSI кодах.  в вин9х была такая либа ansi.sys, при загрузке которой оно бы тоже работало. system("cls") к примеру на лнх вообще не работает.

вообщем полный ответ такой --- в си нет возможности высокоуровневой работаты с экраном типа "вывести в пятую строку текст хелло красным цветом", поэтому необхождимо юзать сторонние библеотеки[напр curses или хотя бы тот же winapi]. 
в сторонних библиотеках это делается. как - ртфм доки к либам.

Автор: mya 21.12.2007, 13:20
а что clrscr() в C++ не работает ?

Автор: Andrey44 21.12.2007, 13:39
Цитата(mya @  21.12.2007,  13:20 Найти цитируемый пост)
а что clrscr() в C++ не работает ? 


А что, такая вообще есть? smile 

Автор: Voldemar2004 21.12.2007, 14:18
Цитата(DigitSphinx @  21.12.2007,  14:03 Найти цитируемый пост)
Цитата(papam @  20.12.2007,  22:45 )CLEAR_SCREEN () -  Очищает  экранничего она не очищает !
Да вы что ? smile 
Код
#include <stdio.h>
#include <conio.h> //  clrscr()

int main()
{

printf("%s", "Hello, World!");

getch();

clrscr(); // очистка экрана

return 0;

}


Добавлено через 3 минуты и 23 секунды
Цитата(Andrey44 @  21.12.2007,  14:39 Найти цитируемый пост)
А что, такая вообще есть?
Цитата
Header File

conio.h 

Category

Console I/O Routines

Prototype

void clrscr(void);

Description

Clears the text-mode window.

clrscr clears the current text window and places the cursor in the upper left corner (at position 1,1).

Note:    Do not use this function in Win32 GUI applications. 

Return Value

None.


Автор: DragoonFighter 21.12.2007, 14:41
У меня clrscr() тоже не работает, пишет not declared .

Автор: DigitSphinx 21.12.2007, 15:10
Цитата(Voldemar2004 @  21.12.2007,  14:18 Найти цитируемый пост)
Да вы что ?  

функция которую предложил papam как уже сказал Mayk в XP не работает
а clrscr() в microsoft VS нету !



Автор: jmp 24.12.2007, 23:48
хмм, что нет такой API? (непосылайте в МДСН я там теряюсь :( )
нежелательно мне вобще system в своем приложении использовать...

Автор: DigitSphinx 24.12.2007, 23:53
Код

void ClrScr()
{
    for (int i = 0; i < 25; i++)
        printf("\n");
}
int _tmain(int argc, _TCHAR* argv[])
{
    printf("TEST");
    ClrScr();
    return 0;
}

 smile 

Автор: Mayk 25.12.2007, 00:11
Цитата(jmp @  25.12.2007,  03:48 Найти цитируемый пост)
хмм, что нет такой API? (непосылайте в МДСН я там теряюсь :( )

http://cpp.enisoc.com/articles/clrscr/

Автор: jmp 7.1.2008, 11:18
Mayk, 
спасибо, сделал как там, работает..

Автор: DragoonFighter 7.1.2008, 19:22
focus_198411, если вопрос решен, то не забудь пометить тему решенной.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)