私はコンソールゲーム(pac-man)をプログラミングしています。私はEnterキーを押さずにユーザー入力を得る方法を知りました。私はインターネットをちょっと見渡して、_getch()
についていくつかのものを見つけましたが、現在はもはや最新のものではなく、私がまだC++にはまったく新しいので自分ができない限り、ヘッダファイルは宣言されていません。 これを行うためのコードをどうすれば作成できますか? おかげEnterキーを押さずにユーザー入力を取得する方法はありますか?
9
A
答えて
7
はこれが(私はLinux上で午前)私の作品:
#include <stdio.h>
#include <unistd.h>
#include <termios.h>
int main()
{
struct termios old_tio, new_tio;
unsigned char c;
/* get the terminal settings for stdin */
tcgetattr(STDIN_FILENO,&old_tio);
/* we want to keep the old setting to restore them a the end */
new_tio=old_tio;
/* disable canonical mode (buffered i/o) and local echo */
new_tio.c_lflag &=(~ICANON & ~ECHO);
/* set the new settings immediately */
tcsetattr(STDIN_FILENO,TCSANOW,&new_tio);
do {
c=getchar();
printf("%d ",c);
} while(c!='q');
/* restore the former settings */
tcsetattr(STDIN_FILENO,TCSANOW,&old_tio);
return 0;
}
これは、コンソールバッファなしになります。
2
あなたはconio.hライブラリおよび機能_getch()がライブ形式で入力を取得すると、あなたはまた、複数の入力のためのループを設定することができますを使用することができます。
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
char n='a'; //Just to initialize it.
while(n!='e') // Will exit if you press e.
{
n=_getch();
}
}
関連する問題
- 1. BlueJのEnterキーを押さずに入力をアスタリスク(*)に変換する方法
- 2. Enterを押す前にユーザー入力を読み取る方法は?
- 3. ウェブページでスクリプトを入力してEnterキーを押す方法
- 4. TextBoxで押されたENTERキーを取り込む方法は?
- 5. XamarinフォームでEnterキーを押さずにユーザーがテキスト入力を取り消したときを検出するにはどうすればよいですか?
- 6. ユーザーが入力フィールドでEnterキーを押したときの検出方法
- 7. Python:何も入力せずに「Enter」キーが押された場合に再度入力を求めます。
- 8. Cでは、ENTERを使わずに入力(整数)を得る方法はありますか?
- 9. 入力キーまたは入力テキストなしのフォームで「Enter」キーを押す方法
- 10. casper.js:ExtJsの入力フィールドに「enter」キーを押します
- 11. Selenium Web Driver、Selenium texboxにテキストを入力してEnterキーを押す方法
- 12. c# - コンソールアプリケーション - ユーザーが何も入力せずにEnterキーを押したときのエラーを解決する
- 13. ユーザーがEnterキーを押したときに入力ボックスが関数を実行する方法はありますか?
- 14. ReactJS - <input/>の中にある 'Enter'キーを押してメソッドをトリガーする方法はありますか?
- 15. カルマ/ジャスミンテストでEnterキーを押すと入力が発生する
- 16. キャプチャ方法GtkEntryでEnterキーを押す
- 17. EnterまたはTabキーを押さずにTextBoxにテキストを入力して自動ポストバックを行う
- 18. Enterキーを入力せずにブタのgruntshellに2つのコマンドを入力する方法は?
- 19. Jquery:入力時にユーザーの入力を取得する方法
- 20. バッチファイルにEnterキーを入力
- 21. Enterキーでアンカータグのクリックイベントをテキストボックスに入力する方法
- 22. node.jsのコマンドラインからユーザー入力を取得するモジュールはありますか?
- 23. Enterキーを押してonBlur()イベントをトリガーする方法は?
- 24. ユーザーから入力文字を取得する方法は?
- 25. ドロップダウンリストで検索するときにEnterキーを押す方法
- 26. Enterキーを押したときに入力値が更新される問題
- 27. Cの入力プログラムでEnterを押す
- 28. ユーザー入力によるユーザー入力変数を他のプログラムに渡す方法はありますか?
- 29. Selenium IDE:検索フィールドにテキストが入力されたら、 'Enter'を押す方法
- 30. I Enterキーを押すと
呪いのゲームライブラリには、このような関数をサポートしています。http://invisible-island.net/ncurses/man/curs_get_wch.3x.html –
お使いのプラットフォームは何ですか? LinuxまたはWindows? –
Mac。 [C++のキーストロークをキャプチャ] [1] を[1]:私はdscussionはすでにここで行われているのXcode –