System cls c что это
Перейти к содержимому

System cls c что это

  • автор:

Очистка экрана

Подскажите, пожалуйста, есть ли функция для очистки экрана в С++? Использовать conio библиотеку не предлагать: ибо она не является стандартной и используется сугубо под винду, так же не тратьте время и не предлагайте циклы с кучей выводов нулевого символа. Нагуглил, что можно:

system("clear"); 

но g++ компилятор выдает:

static.cpp:29:19: error: ‘system’ was not declared in this scope

То есть хотелось бы увидеть библиотеку и оператор очистки или библиотеку под систем(«») для С++.

Отслеживать

задан 16 мая 2011 в 13:33

135 2 2 золотых знака 5 5 серебряных знаков 14 14 бронзовых знаков

conio.h (от англ. console input-output — консольный ввод-вывод) — заголовочный файл, используемый в старых компиляторах, работающих в операционных системах MS-DOS, для создания текстового интерфейса пользователя. Она стандартна лишь в компиляторах мелкомягкого. Так что поучите матчасть еще=)

16 мая 2011 в 13:39

Можно подумать, cls вам экран очистит. Это ведь тоже только под винду.

Console. Clear Метод

Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.

Удаляет из буфера консоли и ее окна отображаемую информацию.

public: static void Clear();
public static void Clear ();
[System.Runtime.Versioning.UnsupportedOSPlatform("android")] [System.Runtime.Versioning.UnsupportedOSPlatform("ios")] [System.Runtime.Versioning.UnsupportedOSPlatform("tvos")] public static void Clear ();
static member Clear : unit -> unit
[] [] [] static member Clear : unit -> unit
Public Shared Sub Clear ()
Исключения

Примеры

В следующем примере метод используется Clear для очистки консоли перед выполнением цикла, предлагает пользователю выбрать цвет переднего плана и фона и ввести строку для отображения. Если пользователь решит не выйти из программы, восстанавливаются исходные цвета переднего плана и фона консоли, а Clear метод вызывается еще раз перед повторным выполнением цикла.

using System; public class Example < public static void Main() < // Save colors so they can be restored when use finishes input. ConsoleColor dftForeColor = Console.ForegroundColor; ConsoleColor dftBackColor = Console.BackgroundColor; bool continueFlag = true; Console.Clear(); do < ConsoleColor newForeColor = ConsoleColor.White; ConsoleColor newBackColor = ConsoleColor.Black; Char foreColorSelection = GetKeyPress("Select Text Color (B for Blue, R for Red, Y for Yellow): ", new Char[] < 'B', 'R', 'Y' >); switch (foreColorSelection) < case 'B': case 'b': newForeColor = ConsoleColor.DarkBlue; break; case 'R': case 'r': newForeColor = ConsoleColor.DarkRed; break; case 'Y': case 'y': newForeColor = ConsoleColor.DarkYellow; break; >Char backColorSelection = GetKeyPress("Select Background Color (W for White, G for Green, M for Magenta): ", new Char[] < 'W', 'G', 'M' >); switch (backColorSelection) < case 'W': case 'w': newBackColor = ConsoleColor.White; break; case 'G': case 'g': newBackColor = ConsoleColor.Green; break; case 'M': case 'm': newBackColor = ConsoleColor.Magenta; break; >Console.WriteLine(); Console.Write("Enter a message to display: "); String textToDisplay = Console.ReadLine(); Console.WriteLine(); Console.ForegroundColor = newForeColor; Console.BackgroundColor = newBackColor; Console.WriteLine(textToDisplay); Console.WriteLine(); if (Char.ToUpper(GetKeyPress("Display another message (Y/N): ", new Char[] < 'Y', 'N' >)) == 'N') continueFlag = false; // Restore the default settings and clear the screen. Console.ForegroundColor = dftForeColor; Console.BackgroundColor = dftBackColor; Console.Clear(); > while (continueFlag); > private static Char GetKeyPress(String msg, Char[] validChars) < ConsoleKeyInfo keyPressed; bool valid = false; Console.WriteLine(); do < Console.Write(msg); keyPressed = Console.ReadKey(); Console.WriteLine(); if (Array.Exists(validChars, ch =>ch.Equals(Char.ToUpper(keyPressed.KeyChar)))) valid = true; > while (! valid); return keyPressed.KeyChar; > > 
open System let getKeyPress msg validChars = Console.WriteLine() let mutable valid = false let mutable keyChar = ' ' while not valid do printfn "%s" msg let keyPressed = Console.ReadKey() printfn "" if validChars |> List.exists (fun ch -> ch.Equals(Char.ToUpper keyPressed.KeyChar)) then valid ConsoleColor.DarkBlue | 'R' | 'r' -> ConsoleColor.DarkRed | 'Y' | 'y' -> ConsoleColor.DarkYellow | _ -> ConsoleColor.White let backColorSelection = getKeyPress "Select Background Color (W for White, G for Green, M for Magenta): " [ 'W'; 'G'; 'M' ] let newBackColor = match backColorSelection with | 'W' | 'w' -> ConsoleColor.White | 'G' | 'g' -> ConsoleColor.Green | 'M' | 'm' -> ConsoleColor.Magenta | _ -> ConsoleColor.Black printfn "" printf "Enter a message to display: " let textToDisplay = Console.ReadLine() printfn "" Console.ForegroundColor  
Module Example Public Sub Main() ' Save colors so they can be restored when use finishes input. Dim dftForeColor As ConsoleColor = Console.ForegroundColor Dim dftBackColor As ConsoleColor = Console.BackgroundColor Dim continueFlag As Boolean = True Console.Clear() Do Dim newForeColor As ConsoleColor Dim newBackColor As ConsoleColor Dim foreColorSelection As Char = GetKeyPress("Select Text Color (B for Blue, R for Red, Y for Yellow): ", < "B"c, "R"c, "Y"c >) Select Case foreColorSelection Case "B"c, "b"c newForeColor = ConsoleColor.DarkBlue Case "R"c, "r"c newForeColor = ConsoleColor.DarkRed Case "Y"c, "y"c newForeColor = ConsoleColor.DarkYellow End Select Dim backColorSelection As Char = GetKeyPress("Select Background Color (W for White, G for Green, M for Magenta): ", < "W"c, "G"c, "M"c >) Select Case backColorSelection Case "W"c, "w"c newBackColor = ConsoleColor.White Case "G"c, "g"c newBackColor = ConsoleColor.Green Case "M"c, "m"c newBackColor = ConsoleColor.Magenta End Select Console.WriteLine() Console.Write("Enter a message to display: ") Dim textToDisplay As String = Console.ReadLine() Console.WriteLine() Console.ForegroundColor = newForeColor Console.BackgroundColor = newBackColor Console.WriteLine(textToDisplay) Console.WriteLine() If Char.ToUpper(GetKeyPress("Display another message (Y/N): ", < "Y"c, "N"c >)) = "N" Then continueFlag = False End If ' Restore the default settings and clear the screen. Console.ForegroundColor = dftForeColor Console.BackgroundColor = dftBackColor Console.Clear() Loop While continueFlag End Sub Private Function GetKeyPress(msg As String, validChars() As Char) As Char Dim keyPressed As ConsoleKeyInfo Dim valid As Boolean = False Console.WriteLine() Do Console.Write(msg) keyPressed = Console.ReadKey() Console.WriteLine() If Array.Exists(validChars, Function(ch As Char) ch.Equals(Char.ToUpper(keypressed.KeyChar))) valid = True End If Loop While Not valid Return keyPressed.KeyChar End Function End Module 

В этом примере используется GetKeyPress метод для проверки выбора пользователем переднего плана и цвета фона.

В этом примере показаны CursorLeft свойства и CursorTop SetCursorPosition методы и Clear методы. В примере размещается курсор, который определяет, где будет происходить следующая запись, чтобы нарисовать 5 символов на 5 символов прямоугольника с помощью сочетания строк "+", "|" и "-". Обратите внимание, что прямоугольник можно нарисовать с меньшим количеством шагов с помощью сочетания других строк.

// This example demonstrates the // Console.CursorLeft and // Console.CursorTop properties, and the // Console.SetCursorPosition and // Console.Clear methods. using namespace System; int origRow; int origCol; void WriteAt( String^ s, int x, int y ) < try < Console::SetCursorPosition( origCol + x, origRow + y ); Console::Write( s ); >catch ( ArgumentOutOfRangeException^ e ) < Console::Clear(); Console::WriteLine( e->Message ); > > int main() < // Clear the screen, then save the top and left coordinates. Console::Clear(); origRow = Console::CursorTop; origCol = Console::CursorLeft; // Draw the left side of a 5x5 rectangle, from top to bottom. WriteAt( "+", 0, 0 ); WriteAt( "|", 0, 1 ); WriteAt( "|", 0, 2 ); WriteAt( "|", 0, 3 ); WriteAt( "+", 0, 4 ); // Draw the bottom side, from left to right. WriteAt( "-", 1, 4 ); // shortcut: WriteAt("---", 1, 4) WriteAt( "-", 2, 4 ); // . WriteAt( "-", 3, 4 ); // . WriteAt( "+", 4, 4 ); // Draw the right side, from bottom to top. WriteAt( "|", 4, 3 ); WriteAt( "|", 4, 2 ); WriteAt( "|", 4, 1 ); WriteAt( "+", 4, 0 ); // Draw the top side, from right to left. WriteAt( "-", 3, 0 ); // shortcut: WriteAt("---", 1, 0) WriteAt( "-", 2, 0 ); // . WriteAt( "-", 1, 0 ); // . // WriteAt( "All done!", 0, 6 ); Console::WriteLine(); >/* This example produces the following results: +---+ | | | | | | +---+ All done! */ 
// This example demonstrates the // Console.CursorLeft and // Console.CursorTop properties, and the // Console.SetCursorPosition and // Console.Clear methods. using System; class Sample < protected static int origRow; protected static int origCol; protected static void WriteAt(string s, int x, int y) < try < Console.SetCursorPosition(origCol+x, origRow+y); Console.Write(s); >catch (ArgumentOutOfRangeException e) < Console.Clear(); Console.WriteLine(e.Message); >> public static void Main() < // Clear the screen, then save the top and left coordinates. Console.Clear(); origRow = Console.CursorTop; origCol = Console.CursorLeft; // Draw the left side of a 5x5 rectangle, from top to bottom. WriteAt("+", 0, 0); WriteAt("|", 0, 1); WriteAt("|", 0, 2); WriteAt("|", 0, 3); WriteAt("+", 0, 4); // Draw the bottom side, from left to right. WriteAt("-", 1, 4); // shortcut: WriteAt("---", 1, 4) WriteAt("-", 2, 4); // . WriteAt("-", 3, 4); // . WriteAt("+", 4, 4); // Draw the right side, from bottom to top. WriteAt("|", 4, 3); WriteAt("|", 4, 2); WriteAt("|", 4, 1); WriteAt("+", 4, 0); // Draw the top side, from right to left. WriteAt("-", 3, 0); // shortcut: WriteAt("---", 1, 0) WriteAt("-", 2, 0); // . WriteAt("-", 1, 0); // . // WriteAt("All done!", 0, 6); Console.WriteLine(); >> /* This example produces the following results: +---+ | | | | | | +---+ All done! */ 
// This example demonstrates the // Console.CursorLeft and // Console.CursorTop properties, and the // Console.SetCursorPosition and // Console.Clear methods. open System // Clear the screen, then save the top and left coordinates. Console.Clear() let origRow = Console.CursorTop let origCol = Console.CursorLeft let writeAt s x y = try Console.SetCursorPosition(origCol + x, origRow + y) printfn $"%s" with :? ArgumentOutOfRangeException as e -> Console.Clear() printfn $"" // Draw the left side of a 5x5 rectangle, from top to bottom. writeAt "+" 0 0 writeAt "|" 0 1 writeAt "|" 0 2 writeAt "|" 0 3 writeAt "+" 0 4 // Draw the bottom side, from left to right. writeAt "-" 1 4 // shortcut: writeAt "---", 1, 4) writeAt "-" 2 4 // . writeAt "-" 3 4 // . writeAt "+" 4 4 // Draw the right side, from bottom to top. writeAt "|" 4 3 writeAt "|" 4 2 writeAt "|" 4 1 writeAt "+" 4 0 // Draw the top side, from right to left. writeAt "-" 3 0 // shortcut: writeAt "---", 1, 0) writeAt "-" 2 0 // . writeAt "-" 1 0 // . writeAt "All done!" 0 6 printfn "" // This example produces the following results: // // +---+ // | | // | | // | | // +---+ // // All done! 
' This example demonstrates the ' Console.CursorLeft and ' Console.CursorTop properties, and the ' Console.SetCursorPosition and ' Console.Clear methods. Class Sample Protected Shared origRow As Integer Protected Shared origCol As Integer Protected Shared Sub WriteAt(s As String, x As Integer, y As Integer) Try Console.SetCursorPosition(origCol + x, origRow + y) Console.Write(s) Catch e As ArgumentOutOfRangeException Console.Clear() Console.WriteLine(e.Message) End Try End Sub Public Shared Sub Main() ' Clear the screen, then save the top and left coordinates. Console.Clear() origRow = Console.CursorTop origCol = Console.CursorLeft ' Draw the left side of a 5x5 rectangle, from top to bottom. WriteAt("+", 0, 0) WriteAt("|", 0, 1) WriteAt("|", 0, 2) WriteAt("|", 0, 3) WriteAt("+", 0, 4) ' Draw the bottom side, from left to right. WriteAt("-", 1, 4) ' shortcut: WriteAt("---", 1, 4) WriteAt("-", 2, 4) ' . WriteAt("-", 3, 4) ' . WriteAt("+", 4, 4) ' Draw the right side, from bottom to top. WriteAt("|", 4, 3) WriteAt("|", 4, 2) WriteAt("|", 4, 1) WriteAt("+", 4, 0) ' Draw the top side, from right to left. WriteAt("-", 3, 0) ' shortcut: WriteAt("---", 1, 0) WriteAt("-", 2, 0) ' . WriteAt("-", 1, 0) ' . ' WriteAt("All done!", 0, 6) Console.WriteLine() End Sub End Class ' 'This example produces the following results: ' '+---+ '| | '| | '| | '+---+ ' 'All done! ' 

Комментарии

Clear Использование метода эквивалентно вызову команды MS-DOS cls в окне командной строки. Clear При вызове метода курсор автоматически прокручивается в левый верхний угол окна, а содержимое буфера экрана — пустыми с использованием текущих цветов фона переднего плана.

Попытка вызова Clear метода при перенаправлении выходных данных консольного приложения в файл вызывает исключение IOException. Чтобы предотвратить это, всегда заключайте вызов Clear метода в try . catch Блок.

System("cls")

Author24 — интернет-сервис помощи студентам

System("cls") *.exe вызвал срабатывание точки останова
При вызове функции system("cls"); крашит программу, но при вызове этой же функции функции с другими.

Как с system("cls") очистить экран в определенных местах
Здравствуйте,неподскажите,Как при помощи system("cls"),или любой другой функции,очистить экран.

System("cls") завершает работу. Как исправить?
Пытался очистить экран консоли командой system("cls"). С задачей она справилась на ура, но вот.

Аналог system("cls"); Есть ли что то побыстрей?
Нужно стирать содержимое с окна и выводить новое. Функция cls как то заторможено это делает. Нужно.

что делает функция system("cls") в с++?

А можно как то написать эту функцию чтобы очищало всё что было написано в пределах одной области скобок ?

"ничего она там не делает. память только занимает. всё основано на Ядре системы и движке Windows." - это гинеальна .

Похожие вопросы
Ваш браузер устарел

Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *