問題タブ [pdcurses]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - PDCurses TUI C++Win32コンソールアプリ-アクセス違反の読み取り場所
pdcursesソースをダウンロードし、プロジェクトにcurses.hを正常に含めることができ、コンパイル済みのライブラリをリンクしました。
ライブラリを数時間試した後、デモフォルダにあるtuidemo.cを見て、実行可能で素晴らしいものにコンパイルしました。プロジェクトに必要なものとまったく同じです。
問題は、それがCコードであり、VS c++2008でC++プロジェクトに取り組んでいることです。
必要なファイルはtui.cとtui.hです。C++コードにそのCファイルを含めるにはどうすればよいですか。私はここでいくつかの提案を見ました
しかし、コンパイラは何百もの警告とエラーにあまり満足していませんでした。
TUI pdcursesに含まれているものを含める/使用するにはどうすればよいですか?
ありがとう
編集:
extern "C"ステートメントを追加したので、テストは次のようになりますが、他のタイプのエラーが発生します
正常にコンパイルされていますが、実行時にエラーがスローされます。これは、ポインタが正しくないことを示しています。
ラインで
ここからどこへ行くのかわからない。再度、感謝します。
c++ - 謎のハイゼンバグ?
だから私はテレポートと通常のマウスでヘビのゲームを作っています。次のようなループが実行されていました。
上記のコードの問題はdisplayInfo、スコアが更新される前に呼び出されることでした。そのため、マウスを食べた後、ユーザーはループが再び実行されてスコアが更新されるまで待たなければなりません。そこで、その 1 行のコードを関数の最後に移動しました。
テレポートが機能しなくなります!ヘビがテレポートに到達するたびにプログラムがクラッシュします。そしてdisplayInfo、次のコードを使用します。
、、およびprintLineのみがある場所。テレポートとは関係ありません。変。color_setmvprintwrefresh()
そこで、ヘビがテレポートから次の場所を取得するスネーク関数に行きました。
Whereteleports[overlap(next)]->teleportFrom(dir)は、ヘビがテレポートされる場所を返します。クラッシュした理由を確認するために (おそらくTeleport画面外の場所が返されたのでしょうか?)、上記の行の前に次の 3 行を追加しました。
そして、問題は消えます!
それだけでなく、この 3 行が必要です。mvprintw(1, 0, "(%i, %i)", l.x, l.y);、または、またはその両方をコメントアウトするとrefresh();、プログラムはテレポートに到達したときに以前と同じようにクラッシュします。
この動作の原因について何か考えはありますか?
更新:すべての警告 (主に符号付き/符号なしの数値の比較に関する警告) を削除しようとしましたが、これまでのところ 1 つだけが残っています:
そしてコード:
この警告を修正するにはどうすればよいですか?
c++ - 意図した文字の代わりに疑問符を表示するPDcurses
PDcursesがいくつかの記号を?として表示することに問題があります。適切な文字の代わりに。コードページ437を表示して、どのシンボルが機能していて、どのシンボルが機能していないかを判断するための小さなテストプログラムを作成しました。
不思議なことに、PDcursesをオフにすると、問題のシンボルが正しく表示されます。
問題の記号は、ÇéâäàåçêëèïîÄæÆôöòûùÿÖÜ¢£₧ƒ</p>です。
これはPDcursesのないソースコードです:
これはPDcursesのソースコードです。
Windows XP Service Pack 3を実行していて、Microsoft Visual C ++2010Expressを使用しています
arrays - 文字列の問題とのpdCURSESおよびaddstrの互換性
ねえ、私はpdCursesのaddstr()を優先文字列クラスで動作させようとしているので(windows curses)、この関数を次のstring_to_80char()関数にしました。これは、文字列を受け取り、80文字の長さのcharを返すことになっています。配列(コンソールの1行に収まる文字数)これは、addstrが受け入れるように見える唯一のパラメーターであるため...
ただし、次のコードを実行すると、「Just a string」が出力されますが、「@」や「4」のようなランダムな文字が後に50スペースのように表示されます。
どうしたの??助けてくれてありがとう!=)
text - pdCursesを使用するコンソールc++テキストゲームをポータブルにする方法
ねえ、私はpdCursesライブラリとマイクロソフトのオペレーティングシステムツールを使用してテキストゲームを作成しました。どのコンピューターでも動作させたいと思います。これが私のインクルードです:
myStopwath / Math.hには次のものが含まれます:
ほとんどのダウンロード可能なプログラムのような、ある種のインストーラーウィザードを作成する必要がありますか?dll、libs、およびヘッダーをフォルダーに単純にスローできますか?または、そのような小さなプログラムのためのはるかに簡単な方法はありますか?ありがとう!=)
ところで:私がしたいのは、別のコンピューターから誰かに私のゲームを見せることだけです。このコンピューターとmsVS++だけにチェーンされているわけではありません。
c++ - PDCurses でウィンドウ全体の背景色を設定する
wattronまた、色のペアは、テキストがウィンドウ内に印刷されるときのテキストの背景色のみを設定します。スペースを入れずにウィンドウ全体 (タイトルやステータス バーなど) の背景色を設定する最良の方法は何ですか?
.net - NUnit とコンソールを使用した単体テスト
私は curses のシャープ ライブラリ (pdcurses の ac# ラッパー) をいじり、API のハンドルとその動作方法を取得するための単体テスト コードを書いていて、質問を思いつきました。
次のコードを使用して、DLL 内から curses Sharp を実行できます (nUnit でテストできるようにするため)。
AllocConsole と FreeConsole は、kernel32 からインポートされた extern です。
私がやりたいのは、入力した文字列が正しく出力されていることをプログラムで確認できるように、コンソール出力を位置 4,6 から文字列まで読み取れるようにすることです。たとえば、TDD を使用して curses スタイルのアプリを作成するには、このようなチェックを実行できることが非常に重要です。
Curses オブジェクトと Stdscr オブジェクト (両方とも Curses Sharp オブジェクト)、および Console オブジェクト (Windows ライブラリから) を調べましたが、まだ方法を見つけることができませんでした。誰にもアイデアはありますか?
c++ - 他のコンピューターでPDCursesを使用するC++プログラムを実行するにはどうすればよいですか?
最近、作業中のC++ゲームでPDCursesの使用を開始しました。自分のマシン(Windows)でプログラムをコンパイルして.exeを実行すると、すべてが正常に機能します。
その.exeファイルをPDCursesのない別のコンピューターに移動して実行しようとすると、pdcurses.dllファイルが見つからないというエラーが発生します。
オンラインで少し調べてみたところ、.dllファイルを.exeと一緒に含めると実行できるはずでしたが、うまくいきませんでした。
これは私がMinGWを使用してプログラムをコンパイルした方法です:g++ game.cpp -o game -lpdcurses
だから私の質問は、PDCursesが設定されていないコンピュータでこのプログラムを実行するにはどうすればよいですか?また、システムが実行する必要のある追加のファイルと.exeを組み合わせてこれを行う方法はありますか?プログラム?また、ある種の静的リンクを実行できることも読みましたが、これまでのところ、これを実行する方法を見つけることができませんでした。
助けてくれてありがとう。
注:問題が発生した場合は、次のチュートリアルに従ってPDCursesをセットアップします。http://comptb.cects.com/1848-adding-pdcurses-to-mingw それが最善の方法かどうかはわかりませんが、実行できます。私のコンピューターでpdcursesを使用するC++コードをコンパイルして実行します。
正確なメッセージを投稿しなかったことをお詫びします。はい、どうぞ:
実行可能ファイルと一緒にpdcurses.dllファイルを含めなかったときに最初に取得したものは次のとおりです。
コンピュータにpdcurses.dllがないため、プログラムを起動できません。この問題を解決するには、プログラムを再インストールしてみてください。
pdcurses.dllをインクルードした後に取得した2番目のもの:
* libcc_s_dw2-1.dllがコンピューターにないため、プログラムを開始できません。この問題を解決するには、プログラムを再インストールしてみてください。*
cygwin - Cygwin 用の PDCurses のインストール
これを行うための解決策をしばらく探していましたが、まだ不明です。cygwin に PDCurses ライブラリをインストールする方法を教えてください。私はzipを持っていますが、ファイルをどこに置くべきかわかりません。これを行う方法はありますか?
前もって感謝します
編集: ncurses 自体の方が優れている場合、cygwin を使用してそれをインストールするにはどうすればよいでしょうか。どちらでも動作します。基本的に、Windowsでncursesのような機能を取得するにはどうすればよいですか。
c++ - PDCurses で Windows Alt コードを無効にする
私は PDCurses を使用していましたが、ライブラリが Alt-Numpad ボタンを明確に定義していることに気付きました。ただし、これらのボタンを実装すると、 を使用しているときgetch()に Alt キーを離すと、入力した Alt コードが入力されることがわかりました。これを無効にするか、何らかの回避策を使用する方法はありますか?