[cmd C++] Alternatywa dla system("cls")
Ostatnio zmodyfikowano 2014-10-26 11:50
Kopczak1995 Temat założony przez niniejszego użytkownika |
[cmd C++] Alternatywa dla system("cls") » 2014-10-24 19:14:35 Witam. Mam małe pytanko. Dziś na laboratoriach dowiedziałem się, że wszelkie komendy system() to swego rodzaju zło wcielone, bo sprawia, że programik nie jest przenośny przez pliki *exe do których się rzekomo odwołuje (pomińmy mało istotny fakt, że zakazano nam używania tychże instrukcji pod groźbą odrzucenia programów :P ) Niby nasz laborant stwierdził, że nie ma co się bawić w czyszczenie, bo jesteśmy na niskim poziomie *bla* *bla* *bla* ale nieco mnie to wkurza, bo lubię mieć przejrzysty kod wynikowy programu. Także moje pytanie - czy da się w jakiś sposób zastąpić komendę system("cls") czy może wie ktoś jak +/- działa aby móc coś podobnego samemu napisać? Próbowałem już się bawić z pętlą zarzucającą mi xxx enterów ale efekt mnie nie zadowalał, więc w dalszym ciągu szukam jakichś rozwiązań. |
|
matys210 |
» 2014-10-24 19:26:56 Coś mi świta clrscr(),ale może nie działać. |
|
pekfos |
» 2014-10-24 19:41:23 A po co chcesz czyścić ekran? |
|
Memento96 |
» 2014-10-24 19:54:20 Kolega z klasy mówił, że ma kod na "przewinięcie" konsoli tak żeby wyglądała na czystą, ale nie zachowawywała się jak po system cls, może jak znajdzie to poda, ale na pewno jest alternatywa :) |
|
Kopczak1995 Temat założony przez niniejszego użytkownika |
» 2014-10-24 19:54:54 Mam na następne laboratoria zrobić kombinację 9 różnych programików w jednym. Wszystko pięknie gdyby nie to, że całość ma być zapętlona i program ma się zamknąć dopiero gdy uzyszkodnik tego zechce. Czyli jesli ktoś odpali wszystkie podprogramy pod rząd to wiadomo, że po niedługim czasie wiersz poleceń będzie zawalony tekstem co raczej mi się nie podoba...
@Edit Memento - brzmi ciekawie... Jeśli uraczyłbyś mnie kodem kolegi to byłbym wdzięczny :)
@Edit2 Próbowałem funkcji clrscr... Z jakiegoś powodu Visual w ogóle nie widzi tej funkcji. Smutne ;__; |
|
stevy |
» 2014-10-24 20:14:08 poczytaj o FillConsoleOutputCharacter na MSDN. wypełnia okno znakiem, który wstawisz jako parametr. |
|
GolemXIV |
» 2014-10-24 20:30:54 ale ile tych enterów byś chciał zrobić? Bo moje okienko terminala ma 70 wierszy, a bufor od niego (mogę sobie przeskrolować) 999 wierszy. A jak będziesz mieć przekierowane wejście/wyjście program.exe > plik.txt to co byś chciał czyścić?
system() jest zły, bo nie masz żadnej pewności, że polecenie, które uruchamiasz, jest tym, o czym myślisz. Użytkownik może na przekład zrobić sobie alias (cls=reboot), a może jakiś inny użytkownik mu podłożyć program, który robi jakiś szkody w systemie.
|
|
pekfos |
» 2014-10-24 20:47:37 poczytaj o FillConsoleOutputCharacter na MSDN |
Miało być przenośnie. Pod tym względem, niewiele to lepsze od "cls". |
|
« 1 » 2 |