
No.1ベストアンサー
- 回答日時:
DOS窓の話ですね。
clsはcommand.comの内部コマンドなので呼び出しが遅いしMSDOS標準システムコールを使ってるので実行も遅いわけで。
だからPC98時代は直接VRAMを書き換えてました。
しかし現在はCPUも早いので puts("")を 24回? 呼び出せば速いのでは。
こんな質問に出会ったのは20年ぶりであります。
アドバイスありがとうございます。
ちょっと最近コンソール上(?)で動くリバーシを作る機会がありまして、それをちょっと作ってからコンソールでもリアルタイム処理を出来る事を知り、コンソールアプリケーションの可能性に目覚めました。
私はDOSの時代を知らず、ウインドウベース(?)のプログラムが当たり前だと思っていた人間ですが、やはりコンソール上でリバーシが動いた時は感動しましたね。
No.3
- 回答日時:
★アドバイス
・ちょっとAPI関数を使って作ってみました。
Windows.h をインクルードできる環境でお使い下さい。(分かりますか?)
#include <Windows.h>
// 画面消去の定数
#define CLS_SPACE ((WORD)(0x20))
#define CLS_COLOR ((WORD)(0x0F))
// すべての画面消去
void cls( void )
{
CONSOLE_SCREEN_BUFFER_INFO csbi = { 0 };
COORD pos = { 0 };
HANDLE hStderr;
hStderr = GetStdHandle( STD_ERROR_HANDLE );
GetConsoleScreenBufferInfo( hStderr, &csbi );
SetConsoleCursorPosition( hStderr, pos );
FillConsoleOutputCharacter( hStderr, CLS_SPACE, (csbi.dwSize.X * csbi.dwSize.Y), pos, NULL );
FillConsoleOutputAttribute( hStderr, CLS_COLOR, (csbi.dwSize.X * csbi.dwSize.Y), pos, NULL );
}
どうぞ。(インデントは全角空白ですので注意)
アドバイスありがとうございます。
ちょうどWin32APIの勉強をちょろっとし始めていたので、なんとか理解して動かしてみたところ、しっかり画面の消去が出来ました。
どういった処理なのかはさっぱりですが、APIを勉強していく過程で少しずつ理解していければと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 『G19 Gen5 MOS - Modular Optic System for Gen5』 の 『 1 2023/03/05 13:37
- その他(プログラミング・Web制作) Pythonを用いたフラッシュ暗算ソフトの開発に必要なもの 2 2023/01/29 02:22
- Windows 10 VirtualBox 7のゲストOSでの物理HDDパーティションのマウント方法 2 2023/05/04 13:01
- その他(インターネット接続・インフラ) DELLのPCにPre-Boot System Performance Checkの表示が出てしまう 1 2023/04/18 11:22
- 英語 Modular Optic System (MOS)とは、一体どの様な物の事なのかを教えてください。 1 2023/03/03 09:52
- 英語 It has an extremely popular e-mail system, reporte 1 2022/11/04 19:41
- ノートパソコン パソコンを、アップグレードした後に出来た、Cドライブの後に出来た、このドライブは? 3 2023/04/03 17:10
- ビデオカード・サウンドカード DellのPC(xp)に、サウンドカードドライバ(内蔵)をインストールしたい。 1 2023/07/31 11:32
- 英語 過去から見た未来を表す would 1 2023/01/14 17:09
- その他(コンピューター・テクノロジー) PCの画面が動かなくやってしまいました…。。 5 2022/10/02 03:23
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語で今まで表示していた画面...
-
三菱GOTの画面切り替えについて
-
C# ログイン画面からメイン画面...
-
Java-jspの画面入力値保持について
-
Javaプログラミングの質問にな...
-
登録後、呼び出し元ページに戻...
-
親windowから子windowのsubmit...
-
【JavaScriptわからない】1クリ...
-
javaのstrutsを使った画面遷移...
-
ASP.NET 画面遷移前の状態を保...
-
windowのコンピュータのロック...
-
遷移元を判定したい!
-
showModalDialogの子画面での画...
-
Javascriptのhistory.back()が...
-
VBS/HTA:画面のサイズを取得す...
-
ページ遷移せずにjava部品を実...
-
【JSP】input typeで入力された...
-
location.hrefでページ切替時の...
-
system("cls")について
-
Sessionがnullになりません。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
三菱GOTの画面切り替えについて
-
Java-jspの画面入力値保持について
-
location.hrefでページ切替時の...
-
遷移元を判定したい!
-
ServletからServletへの値渡し
-
C言語で今まで表示していた画面...
-
登録後、呼び出し元ページに戻...
-
画面遷移の際に確認ダイアログ...
-
FormのsubmitでFormの内容がnull
-
アドレスバーに引数を表示させ...
-
ASP.NET 画面遷移前の状態を保...
-
javaのstrutsを使った画面遷移...
-
Javascriptのhistory.back()が...
-
非アクティブな画面を操作する...
-
画面を隠す・消す方法を教えて...
-
検索画面→結果画面→検索画面と...
-
サブミット後、自動的に画面を...
-
ServletからHTMLページへの遷移...
-
C# ログイン画面からメイン画面...
-
セッション切れでのリクエスト...
おすすめ情報