• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Nie mogę zrobić programu JEBUT z kursu pasja informatyki C++

Mały hosting, OGROMNE możliwości
+1 głos
277 wizyt
pytanie zadane 14 lutego w C i C++ przez niven Nowicjusz (150 p.)
edycja 14 lutego przez niven

Hej robię programik z tego poradnika:

https://www.youtube.com/watchv=y6GOYVTVvqo&list=PLOYHgt8dIdoxx0Y5wzs7CFpmBzb40PaDo&index=4

Nie działa System ("cls") w Visual Studio Code. W terminalu Windowsowym działa a w Visual Studio Code nie działa dlaczego?

Używam Windows 11 Home x64.

 

#include <iostream>
#include <windows.h>
#include <stdlib.h>
#include <cstdlib>
#include <stdio.h>
#include <conio.h>

using namespace std;


int main()
{
    for (int i=15; i>=0; i--)
    {
    
    Sleep(1000);
    system ("cls");

    cout << i << endl;
    }
    cout << "JEBUT";

    return 0;
}
1
komentarz 14 lutego przez niven Nowicjusz (150 p.)
Ok, to przy szybkim zerknięciu do dokumentacji PowerShell powinno działać System("Clear-Host")

Co mam zrobić z System("Clear-Host")?

ale czy pierwsza opcja rozwiązania u ciebie działa?

Pierwsza tzn która? Którą opcję masz na myśli?
1
komentarz 14 lutego przez WojAbuk Gaduła (3,460 p.)

To jest pierwsza opcja i u mnie nie działa, bo korzysta z funkcji specyficznych dla Windows, a jak pisałem ja używam Linuksa. 
 

#include <iostream>
#include <windows.h>
#include <conio.h>

using namespace std;

void clearScreen() {
    HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
    COORD coord = {0, 0};
    DWORD count;
    CONSOLE_SCREEN_BUFFER_INFO csbi;
    
    GetConsoleScreenBufferInfo(hStdOut, &csbi);
    FillConsoleOutputCharacter(hStdOut, ' ', csbi.dwSize.X * csbi.dwSize.Y, coord, &count);
    SetConsoleCursorPosition(hStdOut, coord);
}

int main() {
    for (int i=15; i>=0; i--) {
        Sleep(1000);
        clearScreen();  // zamiast system("cls")
        cout << i << endl;
    }
    cout << "JEBUT";
    
    return 0;
}

System("Clear-Host") to jest odpowiednik System ("cls") w PowerShell. Oba polecenia robią to samo z tego, co zrozumiałem w dokumentacji, ale jedno działa w PowerShell, a drugie w CMD. 

1
komentarz 14 lutego przez niven Nowicjusz (150 p.)
Gdy uruchmiam z komendą clear host zamiast cls mam krzaczki i błąd:

Clear-Host' is not recognized as an internal or external command,
1
komentarz 14 lutego przez WojAbuk Gaduła (3,460 p.)
Ja nie widzę, co się dziej u ciebie i też nie używam zbytnio Windows. Ogólnie, to co robisz, to używasz funkcji Windows, które są w Windows tylko ze względu na kompatybilność wsteczną z DOS, więc to może działać różnie, tym bardziej, że Microsoft w Windows 11 dużo pozmieniał w terminalu, a terminal od czasów Windows 2000 do Windows 10 był prawie bez zmian.

Ogólnie do pisania programów terminalowych polecam jedno z dwóch podejść: ograniczyć się do biblioteki standardowej lub użyć biblioteki ncurses. Druga opcja daje większe możliwość, ale nie działa na Windows. Biblioteka ncurses jest zalecaną metodą pisania interaktywnych aplikacji tekstowych w C/C++ na chyba wszystkie systemy wzorowane na Unix.
1
komentarz 15 lutego przez niven Nowicjusz (150 p.)
A może tak jak napisał neo1020, zmienić domyślny terminal z PowerShell na na przykład Command prompt problem w tym, że po mimo zmiany ustawień na domyślny Command prompt cały czas jest PowerShell. Może gdzieś jeszcze trzeba zmienić domyśłny terminal?

1 odpowiedź

+2 głosów
odpowiedź 14 lutego przez neo1020 Stary wyjadacz (10,470 p.)

Problem jest w tym jaką powłokę uruchamiasz w terminalu VSC

zobacz na zdjęcie niżej i sprawdź u siebie gdzie masz (Default), cls obsługiwany jest wyłącznie przez PowerShell i Command Prompt 

 

1
komentarz 14 lutego przez niven Nowicjusz (150 p.)
edycja 14 lutego przez niven
Gdy wybieram comamnd promt jest bez zmian. Ustawiłem w VS Code command prompt jako domyślny w ustawieniach i to nie pomogło. Bo vs code działa dalej w powershellu. Chyba, że robię coś nie tak

Podobne pytania

–2 głosów
1 odpowiedź 450 wizyt
pytanie zadane 11 lutego 2019 w HTML i CSS przez szalony_kojot11 Nowicjusz (120 p.)
0 głosów
4 odpowiedzi 1,125 wizyt
0 głosów
1 odpowiedź 310 wizyt
pytanie zadane 28 września 2017 w Rozwój zawodowy, nauka, praca przez rice Początkujący (440 p.)

93,718 zapytań

142,630 odpowiedzi

323,262 komentarzy

63,265 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...